agent-issues 0.0.121 → 0.0.126
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/build-info.json +3 -0
- package/dist/cli.js +97746 -26
- package/kanban/dist/assets/index-CIAg6qj5.css +1 -0
- package/kanban/dist/assets/index-DaYQjJS7.js +920 -0
- package/kanban/dist/index.html +13 -0
- package/package.json +12 -11
- package/site/dist/assets/{index-Cx-fLU3e.js → index-D6NM1iDo.js} +181 -144
- package/site/dist/index.html +1 -1
- package/dist/agent-installer.d.ts +0 -49
- package/dist/agent-installer.js +0 -171
- package/dist/agent-installer.js.map +0 -1
- package/dist/auth-session.d.ts +0 -40
- package/dist/auth-session.js +0 -107
- package/dist/auth-session.js.map +0 -1
- package/dist/body-backfill.d.ts +0 -26
- package/dist/body-backfill.js +0 -219
- package/dist/body-backfill.js.map +0 -1
- package/dist/build-mode.d.ts +0 -1
- package/dist/build-mode.js +0 -1
- package/dist/build-mode.js.map +0 -1
- package/dist/cli/commands/auth.d.ts +0 -61
- package/dist/cli/commands/auth.js +0 -134
- package/dist/cli/commands/auth.js.map +0 -1
- package/dist/cli/commands/backfill.d.ts +0 -8
- package/dist/cli/commands/backfill.js +0 -36
- package/dist/cli/commands/backfill.js.map +0 -1
- package/dist/cli/commands/comments.d.ts +0 -34
- package/dist/cli/commands/comments.js +0 -124
- package/dist/cli/commands/comments.js.map +0 -1
- package/dist/cli/commands/context.d.ts +0 -13
- package/dist/cli/commands/context.js +0 -156
- package/dist/cli/commands/context.js.map +0 -1
- package/dist/cli/commands/entities.d.ts +0 -91
- package/dist/cli/commands/entities.js +0 -420
- package/dist/cli/commands/entities.js.map +0 -1
- package/dist/cli/commands/export.d.ts +0 -20
- package/dist/cli/commands/export.js +0 -98
- package/dist/cli/commands/export.js.map +0 -1
- package/dist/cli/commands/fallback.d.ts +0 -6
- package/dist/cli/commands/fallback.js +0 -10
- package/dist/cli/commands/fallback.js.map +0 -1
- package/dist/cli/commands/handoff.d.ts +0 -1
- package/dist/cli/commands/handoff.js +0 -2
- package/dist/cli/commands/handoff.js.map +0 -1
- package/dist/cli/commands/installers.d.ts +0 -37
- package/dist/cli/commands/installers.js +0 -78
- package/dist/cli/commands/installers.js.map +0 -1
- package/dist/cli/commands/kanban.d.ts +0 -8
- package/dist/cli/commands/kanban.js +0 -83
- package/dist/cli/commands/kanban.js.map +0 -1
- package/dist/cli/commands/meta.d.ts +0 -14
- package/dist/cli/commands/meta.js +0 -33
- package/dist/cli/commands/meta.js.map +0 -1
- package/dist/cli/commands/plan-entries.d.ts +0 -30
- package/dist/cli/commands/plan-entries.js +0 -94
- package/dist/cli/commands/plan-entries.js.map +0 -1
- package/dist/cli/commands/site.d.ts +0 -29
- package/dist/cli/commands/site.js +0 -89
- package/dist/cli/commands/site.js.map +0 -1
- package/dist/cli/commands/sql.d.ts +0 -6
- package/dist/cli/commands/sql.js +0 -21
- package/dist/cli/commands/sql.js.map +0 -1
- package/dist/cli/commands/synchronize.d.ts +0 -12
- package/dist/cli/commands/synchronize.js +0 -31
- package/dist/cli/commands/synchronize.js.map +0 -1
- package/dist/cli/commands/tenants.d.ts +0 -29
- package/dist/cli/commands/tenants.js +0 -101
- package/dist/cli/commands/tenants.js.map +0 -1
- package/dist/cli/index.d.ts +0 -4
- package/dist/cli/index.js +0 -120
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/renderers.d.ts +0 -250
- package/dist/cli/renderers.js +0 -286
- package/dist/cli/renderers.js.map +0 -1
- package/dist/cli/shared.d.ts +0 -97
- package/dist/cli/shared.js +0 -192
- package/dist/cli/shared.js.map +0 -1
- package/dist/cli.d.ts +0 -11
- package/dist/cli.js.map +0 -1
- package/dist/context-cli.d.ts +0 -16
- package/dist/context-cli.js +0 -131
- package/dist/context-cli.js.map +0 -1
- package/dist/daemon/daemon-lifecycle.d.ts +0 -1
- package/dist/daemon/daemon-lifecycle.js +0 -2
- package/dist/daemon/daemon-lifecycle.js.map +0 -1
- package/dist/daemon/daemon-main.d.ts +0 -14
- package/dist/daemon/daemon-main.js +0 -30
- package/dist/daemon/daemon-main.js.map +0 -1
- package/dist/daemon/local-daemon-store.d.ts +0 -21
- package/dist/daemon/local-daemon-store.js +0 -31
- package/dist/daemon/local-daemon-store.js.map +0 -1
- package/dist/entity-projection.d.ts +0 -141
- package/dist/entity-projection.js +0 -147
- package/dist/entity-projection.js.map +0 -1
- package/dist/entra-device-login.d.ts +0 -12
- package/dist/entra-device-login.js +0 -40
- package/dist/entra-device-login.js.map +0 -1
- package/dist/export-files.d.ts +0 -24
- package/dist/export-files.js +0 -230
- package/dist/export-files.js.map +0 -1
- package/dist/export-markdown.d.ts +0 -24
- package/dist/export-markdown.js +0 -343
- package/dist/export-markdown.js.map +0 -1
- package/dist/help.d.ts +0 -112
- package/dist/help.js +0 -1430
- package/dist/help.js.map +0 -1
- package/dist/kanban/assets.d.ts +0 -3
- package/dist/kanban/assets.js +0 -37
- package/dist/kanban/assets.js.map +0 -1
- package/dist/kanban/index.d.ts +0 -1
- package/dist/kanban/index.js +0 -2
- package/dist/kanban/index.js.map +0 -1
- package/dist/kanban/server.d.ts +0 -28
- package/dist/kanban/server.js +0 -118
- package/dist/kanban/server.js.map +0 -1
- package/dist/mcp-installer.d.ts +0 -32
- package/dist/mcp-installer.js +0 -118
- package/dist/mcp-installer.js.map +0 -1
- package/dist/mcp-server/index.d.ts +0 -11
- package/dist/mcp-server/index.js +0 -504
- package/dist/mcp-server/index.js.map +0 -1
- package/dist/mcp-server/index.test.d.ts +0 -1
- package/dist/mcp-server/index.test.js +0 -746
- package/dist/mcp-server/index.test.js.map +0 -1
- package/dist/mcp-server/mcp-tool-audit.d.ts +0 -6
- package/dist/mcp-server/mcp-tool-audit.js +0 -47
- package/dist/mcp-server/mcp-tool-audit.js.map +0 -1
- package/dist/mcp-server/stdio.d.ts +0 -2
- package/dist/mcp-server/stdio.js +0 -7
- package/dist/mcp-server/stdio.js.map +0 -1
- package/dist/mcp.d.ts +0 -2
- package/dist/mcp.js +0 -19
- package/dist/mcp.js.map +0 -1
- package/dist/open-storage-driver.d.ts +0 -55
- package/dist/open-storage-driver.js +0 -73
- package/dist/open-storage-driver.js.map +0 -1
- package/dist/open-synchronize-stores.d.ts +0 -24
- package/dist/open-synchronize-stores.js +0 -34
- package/dist/open-synchronize-stores.js.map +0 -1
- package/dist/project-identity.d.ts +0 -23
- package/dist/project-identity.js +0 -121
- package/dist/project-identity.js.map +0 -1
- package/dist/runtime-access-boundary.d.ts +0 -7
- package/dist/runtime-access-boundary.js +0 -182
- package/dist/runtime-access-boundary.js.map +0 -1
- package/dist/service-discovery.d.ts +0 -10
- package/dist/service-discovery.js +0 -64
- package/dist/service-discovery.js.map +0 -1
- package/dist/site/assets.d.ts +0 -4
- package/dist/site/assets.js +0 -46
- package/dist/site/assets.js.map +0 -1
- package/dist/site/cloud-events-relay.d.ts +0 -16
- package/dist/site/cloud-events-relay.js +0 -78
- package/dist/site/cloud-events-relay.js.map +0 -1
- package/dist/site/index.d.ts +0 -1
- package/dist/site/index.js +0 -2
- package/dist/site/index.js.map +0 -1
- package/dist/site/server.d.ts +0 -42
- package/dist/site/server.js +0 -632
- package/dist/site/server.js.map +0 -1
- package/dist/skill-installer.d.ts +0 -35
- package/dist/skill-installer.js +0 -180
- package/dist/skill-installer.js.map +0 -1
- package/dist/vitest-setup.d.ts +0 -1
- package/dist/vitest-setup.js +0 -7
- package/dist/vitest-setup.js.map +0 -1
package/site/dist/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>agent-issues viewer</title>
|
|
7
7
|
<style>#app { min-height: 100vh; }</style>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-D6NM1iDo.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/assets/index-DKEVC0aQ.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
type AgentHost = "claude" | "copilot" | "vscode";
|
|
2
|
-
type AgentInstallRecord = {
|
|
3
|
-
installedName: string;
|
|
4
|
-
agentFile: string;
|
|
5
|
-
};
|
|
6
|
-
type AgentInstallation = AgentInstallRecord & {
|
|
7
|
-
host: AgentHost;
|
|
8
|
-
targetDir: string;
|
|
9
|
-
};
|
|
10
|
-
export type InstallAgentResult = {
|
|
11
|
-
targetDir: string;
|
|
12
|
-
installed: AgentInstallRecord & {
|
|
13
|
-
status: "installed" | "updated" | "skipped";
|
|
14
|
-
};
|
|
15
|
-
additionalInstalled: Array<AgentInstallation & {
|
|
16
|
-
status: "installed" | "updated" | "skipped";
|
|
17
|
-
}>;
|
|
18
|
-
};
|
|
19
|
-
export type UninstallAgentResult = {
|
|
20
|
-
targetDir: string;
|
|
21
|
-
removed: AgentInstallRecord & {
|
|
22
|
-
status: "removed" | "missing";
|
|
23
|
-
};
|
|
24
|
-
additionalRemoved: Array<AgentInstallation & {
|
|
25
|
-
status: "removed" | "missing";
|
|
26
|
-
}>;
|
|
27
|
-
};
|
|
28
|
-
export type ListAgentResult = {
|
|
29
|
-
targetDir: string;
|
|
30
|
-
agent: AgentInstallRecord & {
|
|
31
|
-
status: "installed" | "partial" | "missing";
|
|
32
|
-
};
|
|
33
|
-
additionalAgents: Array<AgentInstallation & {
|
|
34
|
-
status: "installed" | "partial" | "missing";
|
|
35
|
-
}>;
|
|
36
|
-
};
|
|
37
|
-
export declare function getDefaultAgentInstallDir(): string;
|
|
38
|
-
export declare function getDefaultAgentInstallDirs(): Record<AgentHost, string>;
|
|
39
|
-
export declare function installAgent(input: {
|
|
40
|
-
targetDir?: string;
|
|
41
|
-
force?: boolean;
|
|
42
|
-
}): InstallAgentResult;
|
|
43
|
-
export declare function uninstallAgent(input: {
|
|
44
|
-
targetDir?: string;
|
|
45
|
-
}): UninstallAgentResult;
|
|
46
|
-
export declare function listAgent(input: {
|
|
47
|
-
targetDir?: string;
|
|
48
|
-
}): ListAgentResult;
|
|
49
|
-
export {};
|
package/dist/agent-installer.js
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
import { cpSync, existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
|
|
2
|
-
import { homedir } from "node:os";
|
|
3
|
-
import path from "node:path";
|
|
4
|
-
import { fileURLToPath } from "node:url";
|
|
5
|
-
const AGENT_FILE_NAME = "agent-issues.agent.md";
|
|
6
|
-
const CLAUDE_AGENT_FILE_NAME = "agent-issues.md";
|
|
7
|
-
const LEGACY_HOOK_FILE_NAME = "agent-issues-enforcer.mjs";
|
|
8
|
-
const LANGUAGE_FILE_NAME = "agent-issues-language.md";
|
|
9
|
-
const RECIPES_DIRECTORY_NAME = "recipes";
|
|
10
|
-
const AGENT_FILES_MANIFEST = ".agent-issues-agent-files.json";
|
|
11
|
-
const INSTALLED_AGENT_NAME = "agent-issues";
|
|
12
|
-
function getVsCodeUserDir() {
|
|
13
|
-
if (process.platform === "win32") {
|
|
14
|
-
const appData = process.env.APPDATA ?? path.join(homedir(), "AppData", "Roaming");
|
|
15
|
-
return path.join(appData, "Code", "User");
|
|
16
|
-
}
|
|
17
|
-
if (process.platform === "darwin")
|
|
18
|
-
return path.join(homedir(), "Library", "Application Support", "Code", "User");
|
|
19
|
-
const configHome = process.env.XDG_CONFIG_HOME ?? path.join(homedir(), ".config");
|
|
20
|
-
return path.join(configHome, "Code", "User");
|
|
21
|
-
}
|
|
22
|
-
export function getDefaultAgentInstallDir() {
|
|
23
|
-
return getDefaultAgentInstallDirs().vscode;
|
|
24
|
-
}
|
|
25
|
-
export function getDefaultAgentInstallDirs() {
|
|
26
|
-
return {
|
|
27
|
-
claude: path.join(homedir(), ".claude", "agents"),
|
|
28
|
-
copilot: path.join(homedir(), ".copilot", "agents"),
|
|
29
|
-
vscode: path.join(getVsCodeUserDir(), "prompts")
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
export function installAgent(input) {
|
|
33
|
-
const sourceRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..", ".github");
|
|
34
|
-
const [primaryTarget, ...additionalTargets] = getAgentTargets(input.targetDir);
|
|
35
|
-
const installed = installAgentAtTarget(primaryTarget, sourceRoot, Boolean(input.force));
|
|
36
|
-
const additionalInstalled = additionalTargets.map((target) => ({
|
|
37
|
-
...installAgentAtTarget(target, sourceRoot, Boolean(input.force)),
|
|
38
|
-
host: target.host,
|
|
39
|
-
targetDir: target.targetDir
|
|
40
|
-
}));
|
|
41
|
-
return {
|
|
42
|
-
targetDir: primaryTarget.targetDir,
|
|
43
|
-
installed,
|
|
44
|
-
additionalInstalled
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
export function uninstallAgent(input) {
|
|
48
|
-
const [primaryTarget, ...additionalTargets] = getAgentTargets(input.targetDir);
|
|
49
|
-
const removed = uninstallAgentAtTarget(primaryTarget);
|
|
50
|
-
const additionalRemoved = additionalTargets.map((target) => ({
|
|
51
|
-
...uninstallAgentAtTarget(target),
|
|
52
|
-
host: target.host,
|
|
53
|
-
targetDir: target.targetDir
|
|
54
|
-
}));
|
|
55
|
-
return {
|
|
56
|
-
targetDir: primaryTarget.targetDir,
|
|
57
|
-
removed,
|
|
58
|
-
additionalRemoved
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
export function listAgent(input) {
|
|
62
|
-
const [primaryTarget, ...additionalTargets] = getAgentTargets(input.targetDir);
|
|
63
|
-
const agent = listAgentAtTarget(primaryTarget);
|
|
64
|
-
const additionalAgents = additionalTargets.map((target) => ({
|
|
65
|
-
...listAgentAtTarget(target),
|
|
66
|
-
host: target.host,
|
|
67
|
-
targetDir: target.targetDir
|
|
68
|
-
}));
|
|
69
|
-
return {
|
|
70
|
-
targetDir: primaryTarget.targetDir,
|
|
71
|
-
agent,
|
|
72
|
-
additionalAgents
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
function getAgentTargets(targetDir) {
|
|
76
|
-
if (targetDir) {
|
|
77
|
-
return [{ host: "vscode", targetDir: path.resolve(targetDir), agentFileName: AGENT_FILE_NAME }];
|
|
78
|
-
}
|
|
79
|
-
const targetDirs = getDefaultAgentInstallDirs();
|
|
80
|
-
return [
|
|
81
|
-
{ host: "vscode", targetDir: targetDirs.vscode, agentFileName: AGENT_FILE_NAME },
|
|
82
|
-
{ host: "copilot", targetDir: targetDirs.copilot, agentFileName: AGENT_FILE_NAME },
|
|
83
|
-
{ host: "claude", targetDir: targetDirs.claude, agentFileName: CLAUDE_AGENT_FILE_NAME }
|
|
84
|
-
];
|
|
85
|
-
}
|
|
86
|
-
function installAgentAtTarget(target, sourceRoot, force) {
|
|
87
|
-
const sourceAgentFile = path.join(sourceRoot, "agents", target.host === "claude" ? "agent-issues.claude.md" : AGENT_FILE_NAME);
|
|
88
|
-
const sourceLanguageFile = path.join(sourceRoot, "..", "skills", LANGUAGE_FILE_NAME);
|
|
89
|
-
const sourceRecipesDirectory = path.join(sourceRoot, "..", "skills", RECIPES_DIRECTORY_NAME);
|
|
90
|
-
const destinationAgentFile = path.join(target.targetDir, target.agentFileName);
|
|
91
|
-
const legacyHookFile = path.join(target.targetDir, LEGACY_HOOK_FILE_NAME);
|
|
92
|
-
const destinationLanguageFile = path.join(target.targetDir, LANGUAGE_FILE_NAME);
|
|
93
|
-
const destinationRecipesDirectory = path.join(target.targetDir, RECIPES_DIRECTORY_NAME);
|
|
94
|
-
const existed = existsSync(destinationAgentFile);
|
|
95
|
-
if (!existsSync(sourceAgentFile) || !existsSync(sourceLanguageFile) || !existsSync(sourceRecipesDirectory)) {
|
|
96
|
-
throw new Error(`Packaged agent assets not found under ${sourceRoot}`);
|
|
97
|
-
}
|
|
98
|
-
mkdirSync(target.targetDir, { recursive: true });
|
|
99
|
-
if (existed && !force) {
|
|
100
|
-
return {
|
|
101
|
-
installedName: INSTALLED_AGENT_NAME,
|
|
102
|
-
agentFile: destinationAgentFile,
|
|
103
|
-
status: "skipped"
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
cpSync(sourceAgentFile, destinationAgentFile);
|
|
107
|
-
rmSync(legacyHookFile, { force: true });
|
|
108
|
-
cpSync(sourceLanguageFile, destinationLanguageFile);
|
|
109
|
-
if (force || !existsSync(destinationRecipesDirectory)) {
|
|
110
|
-
if (existsSync(destinationRecipesDirectory)) {
|
|
111
|
-
rmSync(destinationRecipesDirectory, { force: true, recursive: true });
|
|
112
|
-
}
|
|
113
|
-
cpSync(sourceRecipesDirectory, destinationRecipesDirectory, { recursive: true });
|
|
114
|
-
writeOwnedRecipeCatalog(target.targetDir);
|
|
115
|
-
}
|
|
116
|
-
return {
|
|
117
|
-
installedName: INSTALLED_AGENT_NAME,
|
|
118
|
-
agentFile: destinationAgentFile,
|
|
119
|
-
status: existed ? "updated" : "installed"
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
function uninstallAgentAtTarget(target) {
|
|
123
|
-
const destinationAgentFile = path.join(target.targetDir, target.agentFileName);
|
|
124
|
-
const legacyHookFile = path.join(target.targetDir, LEGACY_HOOK_FILE_NAME);
|
|
125
|
-
const destinationLanguageFile = path.join(target.targetDir, LANGUAGE_FILE_NAME);
|
|
126
|
-
const destinationRecipesDirectory = path.join(target.targetDir, RECIPES_DIRECTORY_NAME);
|
|
127
|
-
const existed = existsSync(destinationAgentFile);
|
|
128
|
-
for (const destinationFile of [destinationAgentFile, legacyHookFile, destinationLanguageFile]) {
|
|
129
|
-
if (existsSync(destinationFile)) {
|
|
130
|
-
rmSync(destinationFile, { force: true });
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
if (hasOwnedRecipeCatalog(target.targetDir) && existsSync(destinationRecipesDirectory)) {
|
|
134
|
-
rmSync(destinationRecipesDirectory, { force: true, recursive: true });
|
|
135
|
-
}
|
|
136
|
-
rmSync(path.join(target.targetDir, AGENT_FILES_MANIFEST), { force: true });
|
|
137
|
-
return {
|
|
138
|
-
installedName: INSTALLED_AGENT_NAME,
|
|
139
|
-
agentFile: destinationAgentFile,
|
|
140
|
-
status: existed ? "removed" : "missing"
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
function listAgentAtTarget(target) {
|
|
144
|
-
const destinationAgentFile = path.join(target.targetDir, target.agentFileName);
|
|
145
|
-
const destinationRecipesDirectory = path.join(target.targetDir, RECIPES_DIRECTORY_NAME);
|
|
146
|
-
const agentExists = existsSync(destinationAgentFile);
|
|
147
|
-
const recipesExist = existsSync(destinationRecipesDirectory);
|
|
148
|
-
const ownsRecipeCatalog = hasOwnedRecipeCatalog(target.targetDir);
|
|
149
|
-
return {
|
|
150
|
-
installedName: INSTALLED_AGENT_NAME,
|
|
151
|
-
agentFile: destinationAgentFile,
|
|
152
|
-
status: agentExists && recipesExist && ownsRecipeCatalog ? "installed" : agentExists || recipesExist ? "partial" : "missing"
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
function hasOwnedRecipeCatalog(targetDir) {
|
|
156
|
-
const manifestPath = path.join(targetDir, AGENT_FILES_MANIFEST);
|
|
157
|
-
if (!existsSync(manifestPath)) {
|
|
158
|
-
return false;
|
|
159
|
-
}
|
|
160
|
-
try {
|
|
161
|
-
const parsed = JSON.parse(readFileSync(manifestPath, "utf8"));
|
|
162
|
-
return parsed.recipeCatalog === true;
|
|
163
|
-
}
|
|
164
|
-
catch {
|
|
165
|
-
return false;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
function writeOwnedRecipeCatalog(targetDir) {
|
|
169
|
-
writeFileSync(path.join(targetDir, AGENT_FILES_MANIFEST), `${JSON.stringify({ recipeCatalog: true }, null, "\t")}\n`);
|
|
170
|
-
}
|
|
171
|
-
//# sourceMappingURL=agent-installer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-installer.js","sourceRoot":"","sources":["../src/agent-installer.ts"],"names":[],"mappings":"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"}
|
package/dist/auth-session.d.ts
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { type OsCredentialStoreOptions } from "@agent-issues/core";
|
|
2
|
-
export type LocalSavedLogin = {
|
|
3
|
-
name: "local";
|
|
4
|
-
kind: "local";
|
|
5
|
-
};
|
|
6
|
-
export type RemoteSavedLogin = {
|
|
7
|
-
name: string;
|
|
8
|
-
kind: "remote";
|
|
9
|
-
serviceUrl: string;
|
|
10
|
-
tenantId: string;
|
|
11
|
-
userId: string;
|
|
12
|
-
displayName?: string;
|
|
13
|
-
accessToken: string;
|
|
14
|
-
expiresAt: string;
|
|
15
|
-
};
|
|
16
|
-
export type SavedLogin = LocalSavedLogin | RemoteSavedLogin;
|
|
17
|
-
export type SavedLoginView = LocalSavedLogin | Omit<RemoteSavedLogin, "accessToken">;
|
|
18
|
-
/** Strips remote credentials so callers can safely display or log a saved login. */
|
|
19
|
-
export declare function toSavedLoginView(login: LocalSavedLogin): LocalSavedLogin;
|
|
20
|
-
export declare function toSavedLoginView(login: RemoteSavedLogin): Omit<RemoteSavedLogin, "accessToken">;
|
|
21
|
-
export declare function toSavedLoginView(login: SavedLogin): SavedLoginView;
|
|
22
|
-
export type SavedLoginStoreOptions = OsCredentialStoreOptions & {
|
|
23
|
-
/**
|
|
24
|
-
* Overrides the directory checked for legacy plaintext routing files to
|
|
25
|
-
* remove during upgrade. Production defaults to
|
|
26
|
-
* `resolveAgentIssuesHomeDirectory()` (`~/.agent-issues`); tests inject a
|
|
27
|
-
* temp directory so no real user state is touched.
|
|
28
|
-
*/
|
|
29
|
-
homeDirectory?: string;
|
|
30
|
-
};
|
|
31
|
-
/** Returns every saved login in switching order, beginning with local. */
|
|
32
|
-
export declare function listSavedLogins(_options?: SavedLoginStoreOptions): Promise<SavedLogin[]>;
|
|
33
|
-
/** Returns the one globally active saved login. */
|
|
34
|
-
export declare function getActiveSavedLogin(options?: SavedLoginStoreOptions): Promise<SavedLogin>;
|
|
35
|
-
/** Creates or refreshes a named remote login and makes it active. */
|
|
36
|
-
export declare function saveSavedLogin(login: RemoteSavedLogin, options?: SavedLoginStoreOptions): Promise<void>;
|
|
37
|
-
/** Persists the globally active name when it identifies an existing saved login. */
|
|
38
|
-
export declare function setActiveSavedLogin(name: string, options?: SavedLoginStoreOptions): Promise<void>;
|
|
39
|
-
/** Removes a remote saved login, falling back to local when it was active. */
|
|
40
|
-
export declare function removeSavedLogin(name: string, options?: SavedLoginStoreOptions): Promise<void>;
|
package/dist/auth-session.js
DELETED
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import { rmSync } from "node:fs";
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { getCredential, resolveAgentIssuesHomeDirectory, setCredential } from "@agent-issues/core";
|
|
4
|
-
const LOCAL_SAVED_LOGIN = { name: "local", kind: "local" };
|
|
5
|
-
export function toSavedLoginView(login) {
|
|
6
|
-
if (login.kind === "local")
|
|
7
|
-
return login;
|
|
8
|
-
const { accessToken: _accessToken, ...view } = login;
|
|
9
|
-
return view;
|
|
10
|
-
}
|
|
11
|
-
const SERVICE = "agent-issues-auth";
|
|
12
|
-
const ACCOUNT = "sessions";
|
|
13
|
-
const LEGACY_AUTH_SESSION_FILENAME = "auth.json";
|
|
14
|
-
const LEGACY_CLOUD_BINDINGS_FILENAME = "cloud-bindings.json";
|
|
15
|
-
const SAVED_LOGIN_CREDENTIAL_VERSION = 1;
|
|
16
|
-
function resolveLegacyFilePath(filename, options) {
|
|
17
|
-
const homeDirectory = options?.homeDirectory ?? resolveAgentIssuesHomeDirectory();
|
|
18
|
-
return path.join(homeDirectory, filename);
|
|
19
|
-
}
|
|
20
|
-
function createLocalSavedLoginCredential() {
|
|
21
|
-
return { version: SAVED_LOGIN_CREDENTIAL_VERSION, activeName: LOCAL_SAVED_LOGIN.name, remoteLogins: [] };
|
|
22
|
-
}
|
|
23
|
-
function parseSavedLoginCredential(raw) {
|
|
24
|
-
try {
|
|
25
|
-
const parsed = JSON.parse(raw);
|
|
26
|
-
if (typeof parsed !== "object" || parsed === null)
|
|
27
|
-
return undefined;
|
|
28
|
-
const { version, activeName, remoteLogins } = parsed;
|
|
29
|
-
if (version !== SAVED_LOGIN_CREDENTIAL_VERSION || typeof activeName !== "string" || !Array.isArray(remoteLogins)) {
|
|
30
|
-
return undefined;
|
|
31
|
-
}
|
|
32
|
-
return {
|
|
33
|
-
version,
|
|
34
|
-
activeName,
|
|
35
|
-
remoteLogins
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
return undefined;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
async function readSavedLoginCredential(options) {
|
|
43
|
-
rmSync(resolveLegacyFilePath(LEGACY_AUTH_SESSION_FILENAME, options), { force: true });
|
|
44
|
-
rmSync(resolveLegacyFilePath(LEGACY_CLOUD_BINDINGS_FILENAME, options), { force: true });
|
|
45
|
-
const stored = await getCredential(SERVICE, ACCOUNT, options);
|
|
46
|
-
if (stored !== undefined) {
|
|
47
|
-
const current = parseSavedLoginCredential(stored);
|
|
48
|
-
if (current)
|
|
49
|
-
return current;
|
|
50
|
-
}
|
|
51
|
-
const migrated = createLocalSavedLoginCredential();
|
|
52
|
-
await setCredential(SERVICE, ACCOUNT, JSON.stringify(migrated), options);
|
|
53
|
-
return migrated;
|
|
54
|
-
}
|
|
55
|
-
async function writeSavedLoginCredential(file, options) {
|
|
56
|
-
await setCredential(SERVICE, ACCOUNT, JSON.stringify(file), options);
|
|
57
|
-
}
|
|
58
|
-
/** Returns every saved login in switching order, beginning with local. */
|
|
59
|
-
export async function listSavedLogins(_options) {
|
|
60
|
-
return [LOCAL_SAVED_LOGIN, ...(await readSavedLoginCredential(_options)).remoteLogins];
|
|
61
|
-
}
|
|
62
|
-
/** Returns the one globally active saved login. */
|
|
63
|
-
export async function getActiveSavedLogin(options) {
|
|
64
|
-
const file = await readSavedLoginCredential(options);
|
|
65
|
-
return file.remoteLogins.find(({ name }) => name === file.activeName) ?? LOCAL_SAVED_LOGIN;
|
|
66
|
-
}
|
|
67
|
-
/** Creates or refreshes a named remote login and makes it active. */
|
|
68
|
-
export async function saveSavedLogin(login, options) {
|
|
69
|
-
if (login.name === LOCAL_SAVED_LOGIN.name) {
|
|
70
|
-
throw new Error('Saved-login name "local" is reserved.');
|
|
71
|
-
}
|
|
72
|
-
const file = await readSavedLoginCredential(options);
|
|
73
|
-
const existingIndex = file.remoteLogins.findIndex(({ name }) => name === login.name);
|
|
74
|
-
if (existingIndex === -1) {
|
|
75
|
-
file.remoteLogins.push(login);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
file.remoteLogins[existingIndex] = login;
|
|
79
|
-
}
|
|
80
|
-
file.activeName = login.name;
|
|
81
|
-
await writeSavedLoginCredential(file, options);
|
|
82
|
-
}
|
|
83
|
-
/** Persists the globally active name when it identifies an existing saved login. */
|
|
84
|
-
export async function setActiveSavedLogin(name, options) {
|
|
85
|
-
const file = await readSavedLoginCredential(options);
|
|
86
|
-
if (name !== LOCAL_SAVED_LOGIN.name && !file.remoteLogins.some((login) => login.name === name)) {
|
|
87
|
-
throw new Error(`No saved login named "${name}".`);
|
|
88
|
-
}
|
|
89
|
-
file.activeName = name;
|
|
90
|
-
await writeSavedLoginCredential(file, options);
|
|
91
|
-
}
|
|
92
|
-
/** Removes a remote saved login, falling back to local when it was active. */
|
|
93
|
-
export async function removeSavedLogin(name, options) {
|
|
94
|
-
if (name === LOCAL_SAVED_LOGIN.name) {
|
|
95
|
-
throw new Error('The local saved login cannot be removed.');
|
|
96
|
-
}
|
|
97
|
-
const file = await readSavedLoginCredential(options);
|
|
98
|
-
if (!file.remoteLogins.some((login) => login.name === name)) {
|
|
99
|
-
throw new Error(`No saved login named "${name}".`);
|
|
100
|
-
}
|
|
101
|
-
file.remoteLogins = file.remoteLogins.filter((login) => login.name !== name);
|
|
102
|
-
if (file.activeName === name) {
|
|
103
|
-
file.activeName = LOCAL_SAVED_LOGIN.name;
|
|
104
|
-
}
|
|
105
|
-
await writeSavedLoginCredential(file, options);
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=auth-session.js.map
|
package/dist/auth-session.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth-session.js","sourceRoot":"","sources":["../src/auth-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,+BAA+B,EAAE,aAAa,EAAiC,MAAM,oBAAoB,CAAC;AAsBlI,MAAM,iBAAiB,GAAoB,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAM5E,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IACjD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACrD,OAAO,IAAI,CAAC;AACb,CAAC;AAYD,MAAM,OAAO,GAAG,mBAAmB,CAAC;AACpC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,4BAA4B,GAAG,WAAW,CAAC;AACjD,MAAM,8BAA8B,GAAG,qBAAqB,CAAC;AAC7D,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAQzC,SAAS,qBAAqB,CAAC,QAAgB,EAAE,OAAgC;IAChF,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,+BAA+B,EAAE,CAAC;IAClF,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,+BAA+B;IACvC,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE,UAAU,EAAE,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;AAC1G,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAW;IAC7C,IAAI,CAAC;QACJ,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QAEpE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAuC,CAAC;QACtF,IAAI,OAAO,KAAK,8BAA8B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAClH,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO;YACN,OAAO;YACP,UAAU;YACV,YAAY;SACZ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,OAAgC;IACvE,MAAM,CAAC,qBAAqB,CAAC,4BAA4B,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,CAAC,qBAAqB,CAAC,8BAA8B,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAExF,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC7B,CAAC;IAED,MAAM,QAAQ,GAAG,+BAA+B,EAAE,CAAC;IACnD,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IACzE,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,IAA0B,EAAE,OAAgC;IACpG,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAiC;IACtE,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;AACxF,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAgC;IACzE,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC;AAC5F,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAuB,EAAE,OAAgC;IAC7F,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;IACrF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACP,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;IAC7B,MAAM,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAY,EAAE,OAAgC;IACvF,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,IAAI,KAAK,iBAAiB,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACvB,MAAM,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,OAAgC;IACpF,IAAI,IAAI,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC7E,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC1C,CAAC;IACD,MAAM,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC"}
|
package/dist/body-backfill.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { StorageDriver } from "@agent-issues/core";
|
|
2
|
-
export declare const BACKFILLABLE_BODY_KINDS: readonly ["project", "epic", "version", "initiative", "issue", "prd", "userStory", "adr"];
|
|
3
|
-
export type BackfillableBodyKind = (typeof BACKFILLABLE_BODY_KINDS)[number];
|
|
4
|
-
export type BackfillBodiesKindResult = {
|
|
5
|
-
kind: BackfillableBodyKind;
|
|
6
|
-
considered: number;
|
|
7
|
-
updated: number;
|
|
8
|
-
skipped: number;
|
|
9
|
-
};
|
|
10
|
-
export type BackfillBodiesResult = {
|
|
11
|
-
tenantId: string;
|
|
12
|
-
dryRun: boolean;
|
|
13
|
-
force: boolean;
|
|
14
|
-
kinds: BackfillableBodyKind[];
|
|
15
|
-
considered: number;
|
|
16
|
-
updated: number;
|
|
17
|
-
skipped: number;
|
|
18
|
-
byKind: BackfillBodiesKindResult[];
|
|
19
|
-
};
|
|
20
|
-
export declare function isBackfillableBodyKind(value: string): value is BackfillableBodyKind;
|
|
21
|
-
export declare function parseBackfillableBodyKinds(values: string[]): BackfillableBodyKind[];
|
|
22
|
-
export declare function backfillBodies(store: StorageDriver, input?: {
|
|
23
|
-
dryRun?: boolean;
|
|
24
|
-
force?: boolean;
|
|
25
|
-
kinds?: BackfillableBodyKind[];
|
|
26
|
-
}): Promise<BackfillBodiesResult>;
|
package/dist/body-backfill.js
DELETED
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
export const BACKFILLABLE_BODY_KINDS = ["project", "epic", "version", "initiative", "issue", "prd", "userStory", "adr"];
|
|
2
|
-
const DERIVED_CONTENT_MARKER = "Not derived from tracker metadata.";
|
|
3
|
-
export function isBackfillableBodyKind(value) {
|
|
4
|
-
return BACKFILLABLE_BODY_KINDS.includes(value);
|
|
5
|
-
}
|
|
6
|
-
export function parseBackfillableBodyKinds(values) {
|
|
7
|
-
if (values.length === 0) {
|
|
8
|
-
return [...BACKFILLABLE_BODY_KINDS];
|
|
9
|
-
}
|
|
10
|
-
const kinds = [];
|
|
11
|
-
const invalid = [];
|
|
12
|
-
for (const value of values) {
|
|
13
|
-
if (!isBackfillableBodyKind(value)) {
|
|
14
|
-
invalid.push(value);
|
|
15
|
-
continue;
|
|
16
|
-
}
|
|
17
|
-
if (!kinds.includes(value)) {
|
|
18
|
-
kinds.push(value);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
if (invalid.length > 0) {
|
|
22
|
-
throw new Error(`Unsupported backfill kinds: ${invalid.join(", ")}. Supported kinds: ${BACKFILLABLE_BODY_KINDS.join(", ")}.`);
|
|
23
|
-
}
|
|
24
|
-
return kinds;
|
|
25
|
-
}
|
|
26
|
-
export async function backfillBodies(store, input = {}) {
|
|
27
|
-
const snapshot = await store.getDatabaseSnapshot();
|
|
28
|
-
const kinds = input.kinds ?? [...BACKFILLABLE_BODY_KINDS];
|
|
29
|
-
const byKind = [];
|
|
30
|
-
for (const kind of kinds) {
|
|
31
|
-
const entities = sortEntities(snapshot.entities.filter((entity) => entity.kind === kind));
|
|
32
|
-
let updated = 0;
|
|
33
|
-
let skipped = 0;
|
|
34
|
-
for (const entity of entities) {
|
|
35
|
-
const body = buildBody(kind);
|
|
36
|
-
if (body.trim().length === 0) {
|
|
37
|
-
skipped += 1;
|
|
38
|
-
continue;
|
|
39
|
-
}
|
|
40
|
-
const hasStoredBody = entity.body.trim().length > 0;
|
|
41
|
-
const matchesGeneratedBody = hasStoredBody && entity.body === body;
|
|
42
|
-
if (!input.force && hasStoredBody && !matchesGeneratedBody) {
|
|
43
|
-
skipped += 1;
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
if (!input.force && matchesGeneratedBody && entity.bodySource === "generated") {
|
|
47
|
-
skipped += 1;
|
|
48
|
-
continue;
|
|
49
|
-
}
|
|
50
|
-
if (!input.dryRun) {
|
|
51
|
-
await store.setEntityBody({ entityId: entity.id, body, bodySource: "generated", expectedRevision: entity.revision, expectedContentHash: entity.contentHash });
|
|
52
|
-
}
|
|
53
|
-
updated += 1;
|
|
54
|
-
}
|
|
55
|
-
byKind.push({
|
|
56
|
-
kind,
|
|
57
|
-
considered: entities.length,
|
|
58
|
-
updated,
|
|
59
|
-
skipped
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
return {
|
|
63
|
-
tenantId: store.tenantId,
|
|
64
|
-
dryRun: input.dryRun ?? false,
|
|
65
|
-
force: input.force ?? false,
|
|
66
|
-
kinds,
|
|
67
|
-
considered: byKind.reduce((sum, item) => sum + item.considered, 0),
|
|
68
|
-
updated: byKind.reduce((sum, item) => sum + item.updated, 0),
|
|
69
|
-
skipped: byKind.reduce((sum, item) => sum + item.skipped, 0),
|
|
70
|
-
byKind
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
function buildBody(kind) {
|
|
74
|
-
switch (kind) {
|
|
75
|
-
case "project":
|
|
76
|
-
return buildManagementBody();
|
|
77
|
-
case "epic":
|
|
78
|
-
return buildManagementBody();
|
|
79
|
-
case "version":
|
|
80
|
-
return buildVersionBody();
|
|
81
|
-
case "initiative":
|
|
82
|
-
return buildInitiativeBody();
|
|
83
|
-
case "issue":
|
|
84
|
-
return buildIssueBody();
|
|
85
|
-
case "prd":
|
|
86
|
-
return buildPrdBody();
|
|
87
|
-
case "userStory":
|
|
88
|
-
return buildUserStoryBody();
|
|
89
|
-
case "adr":
|
|
90
|
-
return buildAdrBody();
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
function buildManagementBody() {
|
|
94
|
-
return [
|
|
95
|
-
"## Purpose",
|
|
96
|
-
"",
|
|
97
|
-
DERIVED_CONTENT_MARKER,
|
|
98
|
-
"",
|
|
99
|
-
"## Scope",
|
|
100
|
-
"",
|
|
101
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
102
|
-
"",
|
|
103
|
-
"## Success Conditions",
|
|
104
|
-
"",
|
|
105
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
106
|
-
"",
|
|
107
|
-
"## Non-Goals",
|
|
108
|
-
"",
|
|
109
|
-
`- ${DERIVED_CONTENT_MARKER}`
|
|
110
|
-
].join("\n");
|
|
111
|
-
}
|
|
112
|
-
function buildVersionBody() {
|
|
113
|
-
return [
|
|
114
|
-
"## Release Intent",
|
|
115
|
-
"",
|
|
116
|
-
DERIVED_CONTENT_MARKER,
|
|
117
|
-
"",
|
|
118
|
-
"## Compatibility and Migration Notes",
|
|
119
|
-
"",
|
|
120
|
-
`- ${DERIVED_CONTENT_MARKER}`
|
|
121
|
-
].join("\n");
|
|
122
|
-
}
|
|
123
|
-
function buildInitiativeBody() {
|
|
124
|
-
return buildManagementBody();
|
|
125
|
-
}
|
|
126
|
-
function buildIssueBody() {
|
|
127
|
-
return [
|
|
128
|
-
"## Work Mode",
|
|
129
|
-
"",
|
|
130
|
-
DERIVED_CONTENT_MARKER,
|
|
131
|
-
"",
|
|
132
|
-
"## Outcome",
|
|
133
|
-
"",
|
|
134
|
-
DERIVED_CONTENT_MARKER,
|
|
135
|
-
"",
|
|
136
|
-
"## Scope",
|
|
137
|
-
"",
|
|
138
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
139
|
-
"",
|
|
140
|
-
"## Work Plan",
|
|
141
|
-
"",
|
|
142
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
143
|
-
"",
|
|
144
|
-
"## Acceptance Criteria",
|
|
145
|
-
"",
|
|
146
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
147
|
-
"",
|
|
148
|
-
"## Verification",
|
|
149
|
-
"",
|
|
150
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
151
|
-
"",
|
|
152
|
-
"## Notes",
|
|
153
|
-
"",
|
|
154
|
-
DERIVED_CONTENT_MARKER
|
|
155
|
-
].join("\n");
|
|
156
|
-
}
|
|
157
|
-
function buildPrdBody() {
|
|
158
|
-
return [
|
|
159
|
-
"## Problem Statement",
|
|
160
|
-
"",
|
|
161
|
-
DERIVED_CONTENT_MARKER,
|
|
162
|
-
"",
|
|
163
|
-
"## Solution",
|
|
164
|
-
"",
|
|
165
|
-
DERIVED_CONTENT_MARKER,
|
|
166
|
-
"",
|
|
167
|
-
"## Implementation Decisions",
|
|
168
|
-
"",
|
|
169
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
170
|
-
"",
|
|
171
|
-
"## Testing Decisions",
|
|
172
|
-
"",
|
|
173
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
174
|
-
"",
|
|
175
|
-
"## Out of Scope",
|
|
176
|
-
"",
|
|
177
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
178
|
-
"",
|
|
179
|
-
"## Further Notes",
|
|
180
|
-
"",
|
|
181
|
-
DERIVED_CONTENT_MARKER
|
|
182
|
-
].join("\n");
|
|
183
|
-
}
|
|
184
|
-
function buildUserStoryBody() {
|
|
185
|
-
return [
|
|
186
|
-
`As an actor, I want ${DERIVED_CONTENT_MARKER}, so that ${DERIVED_CONTENT_MARKER}`,
|
|
187
|
-
"",
|
|
188
|
-
"## Acceptance Criteria",
|
|
189
|
-
"",
|
|
190
|
-
`- ${DERIVED_CONTENT_MARKER}`,
|
|
191
|
-
"",
|
|
192
|
-
"## Boundaries",
|
|
193
|
-
"",
|
|
194
|
-
`- ${DERIVED_CONTENT_MARKER}`
|
|
195
|
-
].join("\n");
|
|
196
|
-
}
|
|
197
|
-
function buildAdrBody() {
|
|
198
|
-
return [
|
|
199
|
-
"## Status",
|
|
200
|
-
"",
|
|
201
|
-
DERIVED_CONTENT_MARKER,
|
|
202
|
-
"",
|
|
203
|
-
"## Context",
|
|
204
|
-
"",
|
|
205
|
-
DERIVED_CONTENT_MARKER,
|
|
206
|
-
"",
|
|
207
|
-
"## Decision",
|
|
208
|
-
"",
|
|
209
|
-
DERIVED_CONTENT_MARKER,
|
|
210
|
-
"",
|
|
211
|
-
"## Consequences",
|
|
212
|
-
"",
|
|
213
|
-
`- ${DERIVED_CONTENT_MARKER}`
|
|
214
|
-
].join("\n");
|
|
215
|
-
}
|
|
216
|
-
function sortEntities(entities) {
|
|
217
|
-
return [...entities].sort((left, right) => left.id.localeCompare(right.id, undefined, { numeric: true }));
|
|
218
|
-
}
|
|
219
|
-
//# sourceMappingURL=body-backfill.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"body-backfill.js","sourceRoot":"","sources":["../src/body-backfill.ts"],"names":[],"mappings":"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"}
|
package/dist/build-mode.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const BUILD_MODE: "development" | "production";
|
package/dist/build-mode.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const BUILD_MODE = "production";
|