@aipper/aiws 0.0.29 → 0.0.31
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/bin/aiws.js +2 -2
- package/dist/aiws-package.d.ts +4 -0
- package/dist/aiws-package.js +11 -0
- package/dist/aiws-package.js.map +1 -0
- package/dist/aiws-paths.d.ts +48 -0
- package/dist/aiws-paths.js +129 -0
- package/dist/aiws-paths.js.map +1 -0
- package/dist/backup.d.ts +27 -0
- package/dist/backup.js +125 -0
- package/dist/backup.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +773 -0
- package/dist/cli.js.map +1 -0
- package/dist/codex-prompts.d.ts +17 -0
- package/dist/codex-prompts.js +49 -0
- package/dist/codex-prompts.js.map +1 -0
- package/dist/codex-skills.d.ts +17 -0
- package/dist/codex-skills.js +75 -0
- package/dist/codex-skills.js.map +1 -0
- package/dist/commands/change-advice.d.ts +25 -0
- package/dist/commands/change-advice.js +197 -0
- package/dist/commands/change-advice.js.map +1 -0
- package/dist/commands/change-evidence-command.d.ts +29 -0
- package/dist/commands/change-evidence-command.js +213 -0
- package/dist/commands/change-evidence-command.js.map +1 -0
- package/dist/commands/change-evidence-entry.d.ts +16 -0
- package/dist/commands/change-evidence-entry.js +35 -0
- package/dist/commands/change-evidence-entry.js.map +1 -0
- package/dist/commands/change-evidence.d.ts +108 -0
- package/dist/commands/change-evidence.js +341 -0
- package/dist/commands/change-evidence.js.map +1 -0
- package/dist/commands/change-finish.d.ts +71 -0
- package/dist/commands/change-finish.js +387 -0
- package/dist/commands/change-finish.js.map +1 -0
- package/dist/commands/change-git-status.d.ts +22 -0
- package/dist/commands/change-git-status.js +50 -0
- package/dist/commands/change-git-status.js.map +1 -0
- package/dist/commands/change-lifecycle-entry.d.ts +29 -0
- package/{src → dist}/commands/change-lifecycle-entry.js +21 -28
- package/dist/commands/change-lifecycle-entry.js.map +1 -0
- package/dist/commands/change-lifecycle.d.ts +56 -0
- package/dist/commands/change-lifecycle.js +211 -0
- package/dist/commands/change-lifecycle.js.map +1 -0
- package/dist/commands/change-metrics-command.d.ts +12 -0
- package/dist/commands/change-metrics-command.js +110 -0
- package/dist/commands/change-metrics-command.js.map +1 -0
- package/dist/commands/change-next-command.d.ts +18 -0
- package/dist/commands/change-next-command.js +138 -0
- package/dist/commands/change-next-command.js.map +1 -0
- package/dist/commands/change-review-gates.d.ts +107 -0
- package/dist/commands/change-review-gates.js +329 -0
- package/dist/commands/change-review-gates.js.map +1 -0
- package/dist/commands/change-scope-gate.d.ts +21 -0
- package/dist/commands/change-scope-gate.js +32 -0
- package/dist/commands/change-scope-gate.js.map +1 -0
- package/dist/commands/change-start.d.ts +30 -0
- package/dist/commands/change-start.js +91 -0
- package/dist/commands/change-start.js.map +1 -0
- package/dist/commands/change-state-command.d.ts +3 -0
- package/dist/commands/change-state-command.js +32 -0
- package/dist/commands/change-state-command.js.map +1 -0
- package/dist/commands/change-status-command.d.ts +13 -0
- package/dist/commands/change-status-command.js +126 -0
- package/dist/commands/change-status-command.js.map +1 -0
- package/dist/commands/change-status-context.d.ts +58 -0
- package/dist/commands/change-status-context.js +166 -0
- package/dist/commands/change-status-context.js.map +1 -0
- package/dist/commands/change-task-stats.d.ts +24 -0
- package/dist/commands/change-task-stats.js +66 -0
- package/dist/commands/change-task-stats.js.map +1 -0
- package/dist/commands/change-validate-entry.d.ts +17 -0
- package/dist/commands/change-validate-entry.js +44 -0
- package/dist/commands/change-validate-entry.js.map +1 -0
- package/dist/commands/change-validate.d.ts +32 -0
- package/dist/commands/change-validate.js +128 -0
- package/dist/commands/change-validate.js.map +1 -0
- package/dist/commands/change.d.ts +322 -0
- package/dist/commands/change.js +1731 -0
- package/dist/commands/change.js.map +1 -0
- package/dist/commands/codex-install-prompts.d.ts +4 -0
- package/dist/commands/codex-install-prompts.js +68 -0
- package/dist/commands/codex-install-prompts.js.map +1 -0
- package/dist/commands/codex-install-skills.d.ts +4 -0
- package/dist/commands/codex-install-skills.js +74 -0
- package/dist/commands/codex-install-skills.js.map +1 -0
- package/dist/commands/codex-status-prompts.d.ts +4 -0
- package/dist/commands/codex-status-prompts.js +44 -0
- package/dist/commands/codex-status-prompts.js.map +1 -0
- package/dist/commands/codex-status-skills.d.ts +4 -0
- package/dist/commands/codex-status-skills.js +54 -0
- package/dist/commands/codex-status-skills.js.map +1 -0
- package/dist/commands/codex-uninstall-prompts.d.ts +4 -0
- package/dist/commands/codex-uninstall-prompts.js +51 -0
- package/dist/commands/codex-uninstall-prompts.js.map +1 -0
- package/dist/commands/codex-uninstall-skills.d.ts +4 -0
- package/dist/commands/codex-uninstall-skills.js +59 -0
- package/dist/commands/codex-uninstall-skills.js.map +1 -0
- package/dist/commands/dashboard.d.ts +222 -0
- package/dist/commands/dashboard.js +193 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/hooks-install.d.ts +4 -0
- package/dist/commands/hooks-install.js +90 -0
- package/dist/commands/hooks-install.js.map +1 -0
- package/dist/commands/hooks-status.d.ts +4 -0
- package/dist/commands/hooks-status.js +89 -0
- package/dist/commands/hooks-status.js.map +1 -0
- package/dist/commands/init.d.ts +4 -0
- package/dist/commands/init.js +100 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/opencode-auto.d.ts +11 -0
- package/dist/commands/opencode-auto.js +158 -0
- package/dist/commands/opencode-auto.js.map +1 -0
- package/dist/commands/opencode-status.d.ts +4 -0
- package/dist/commands/opencode-status.js +75 -0
- package/dist/commands/opencode-status.js.map +1 -0
- package/dist/commands/opencode-supervise.d.ts +24 -0
- package/dist/commands/opencode-supervise.js +188 -0
- package/dist/commands/opencode-supervise.js.map +1 -0
- package/dist/commands/rollback.d.ts +4 -0
- package/dist/commands/rollback.js +12 -0
- package/dist/commands/rollback.js.map +1 -0
- package/dist/commands/update.d.ts +4 -0
- package/dist/commands/update.js +212 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/validate.d.ts +4 -0
- package/dist/commands/validate.js +222 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/commands/ws-commit.d.ts +5 -0
- package/dist/commands/ws-commit.js +39 -0
- package/dist/commands/ws-commit.js.map +1 -0
- package/dist/commands/ws-deliver.d.ts +5 -0
- package/dist/commands/ws-deliver.js +59 -0
- package/dist/commands/ws-deliver.js.map +1 -0
- package/dist/commands/ws-finish.d.ts +5 -0
- package/dist/commands/ws-finish.js +142 -0
- package/dist/commands/ws-finish.js.map +1 -0
- package/dist/commands/ws-handoff.d.ts +5 -0
- package/dist/commands/ws-handoff.js +35 -0
- package/dist/commands/ws-handoff.js.map +1 -0
- package/dist/commands/ws-migrate.d.ts +5 -0
- package/dist/commands/ws-migrate.js +41 -0
- package/dist/commands/ws-migrate.js.map +1 -0
- package/dist/commands/ws-plan-verify.d.ts +5 -0
- package/dist/commands/ws-plan-verify.js +38 -0
- package/dist/commands/ws-plan-verify.js.map +1 -0
- package/dist/commands/ws-pull.d.ts +5 -0
- package/dist/commands/ws-pull.js +26 -0
- package/dist/commands/ws-pull.js.map +1 -0
- package/dist/commands/ws-push.d.ts +5 -0
- package/dist/commands/ws-push.js +68 -0
- package/dist/commands/ws-push.js.map +1 -0
- package/dist/commands/ws-submodule-setup.d.ts +5 -0
- package/dist/commands/ws-submodule-setup.js +55 -0
- package/dist/commands/ws-submodule-setup.js.map +1 -0
- package/dist/commands/ws-verify-before-complete.d.ts +5 -0
- package/dist/commands/ws-verify-before-complete.js +35 -0
- package/dist/commands/ws-verify-before-complete.js.map +1 -0
- package/dist/dashboard/app.d.ts +1 -0
- package/dist/dashboard/app.js +370 -0
- package/dist/dashboard/app.js.map +1 -0
- package/dist/delegation/cli.d.ts +6 -0
- package/dist/delegation/cli.js +14 -0
- package/dist/delegation/cli.js.map +1 -0
- package/dist/delegation/index.d.ts +35 -0
- package/dist/delegation/index.js +118 -0
- package/dist/delegation/index.js.map +1 -0
- package/dist/errors.d.ts +8 -0
- package/dist/errors.js +11 -0
- package/dist/errors.js.map +1 -0
- package/dist/exec.d.ts +9 -0
- package/dist/exec.js +22 -0
- package/dist/exec.js.map +1 -0
- package/dist/fs.d.ts +9 -0
- package/dist/fs.js +62 -0
- package/dist/fs.js.map +1 -0
- package/dist/governance.d.ts +10 -0
- package/dist/governance.js +135 -0
- package/dist/governance.js.map +1 -0
- package/dist/hash.d.ts +3 -0
- package/dist/hash.js +13 -0
- package/dist/hash.js.map +1 -0
- package/dist/hooks/deploy-claude.d.ts +13 -0
- package/dist/hooks/deploy-claude.js +67 -0
- package/dist/hooks/deploy-claude.js.map +1 -0
- package/dist/journal.d.ts +22 -0
- package/dist/journal.js +112 -0
- package/dist/journal.js.map +1 -0
- package/dist/json-schema-lite.d.ts +22 -0
- package/dist/json-schema-lite.js +148 -0
- package/dist/json-schema-lite.js.map +1 -0
- package/dist/managed-blocks.d.ts +24 -0
- package/dist/managed-blocks.js +84 -0
- package/dist/managed-blocks.js.map +1 -0
- package/dist/manifest.d.ts +24 -0
- package/dist/manifest.js +145 -0
- package/dist/manifest.js.map +1 -0
- package/dist/opencode-env.d.ts +62 -0
- package/dist/opencode-env.js +178 -0
- package/dist/opencode-env.js.map +1 -0
- package/dist/path-utils.d.ts +2 -0
- package/dist/path-utils.js +8 -0
- package/dist/path-utils.js.map +1 -0
- package/dist/spec.d.ts +17 -0
- package/dist/spec.js +174 -0
- package/dist/spec.js.map +1 -0
- package/dist/template.d.ts +20 -0
- package/dist/template.js +123 -0
- package/dist/template.js.map +1 -0
- package/dist/workspace.d.ts +4 -0
- package/dist/workspace.js +19 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +11 -3
- package/src/aiws-package.js +0 -15
- package/src/backup.js +0 -149
- package/src/cli.js +0 -760
- package/src/codex-prompts.js +0 -74
- package/src/codex-skills.js +0 -111
- package/src/commands/change-advice.js +0 -181
- package/src/commands/change-evidence-command.js +0 -242
- package/src/commands/change-evidence-entry.js +0 -40
- package/src/commands/change-evidence.js +0 -340
- package/src/commands/change-finish.js +0 -413
- package/src/commands/change-git-status.js +0 -53
- package/src/commands/change-lifecycle.js +0 -236
- package/src/commands/change-metrics-command.js +0 -110
- package/src/commands/change-next-command.js +0 -133
- package/src/commands/change-review-gates.js +0 -331
- package/src/commands/change-scope-gate.js +0 -34
- package/src/commands/change-start.js +0 -85
- package/src/commands/change-state-command.js +0 -40
- package/src/commands/change-status-command.js +0 -125
- package/src/commands/change-status-context.js +0 -173
- package/src/commands/change-task-stats.js +0 -64
- package/src/commands/change-validate-entry.js +0 -45
- package/src/commands/change-validate.js +0 -127
- package/src/commands/change.js +0 -1829
- package/src/commands/codex-install-prompts.js +0 -68
- package/src/commands/codex-install-skills.js +0 -74
- package/src/commands/codex-status-prompts.js +0 -55
- package/src/commands/codex-status-skills.js +0 -63
- package/src/commands/codex-uninstall-prompts.js +0 -55
- package/src/commands/codex-uninstall-skills.js +0 -62
- package/src/commands/dashboard.js +0 -205
- package/src/commands/hooks-install.js +0 -92
- package/src/commands/hooks-status.js +0 -95
- package/src/commands/init.js +0 -101
- package/src/commands/opencode-auto.js +0 -167
- package/src/commands/opencode-status.js +0 -103
- package/src/commands/opencode-supervise.js +0 -200
- package/src/commands/rollback.js +0 -13
- package/src/commands/update.js +0 -145
- package/src/commands/validate.js +0 -228
- package/src/commands/ws-commit.js +0 -44
- package/src/commands/ws-deliver.js +0 -67
- package/src/commands/ws-finish.js +0 -83
- package/src/commands/ws-handoff.js +0 -40
- package/src/commands/ws-migrate.js +0 -41
- package/src/commands/ws-plan-verify.js +0 -44
- package/src/commands/ws-pull.js +0 -30
- package/src/commands/ws-push.js +0 -71
- package/src/commands/ws-submodule-setup.js +0 -65
- package/src/commands/ws-verify-before-complete.js +0 -39
- package/src/dashboard/app.js +0 -371
- package/src/errors.js +0 -15
- package/src/exec.js +0 -34
- package/src/fs.js +0 -91
- package/src/governance.js +0 -159
- package/src/hash.js +0 -25
- package/src/json-schema-lite.js +0 -164
- package/src/managed-blocks.js +0 -131
- package/src/manifest.js +0 -177
- package/src/opencode-env.js +0 -208
- package/src/path-utils.js +0 -20
- package/src/spec.js +0 -195
- package/src/template.js +0 -187
- package/src/workspace.js +0 -23
- /package/{src → dist}/dashboard/index.html +0 -0
- /package/{src → dist}/dashboard/style.css +0 -0
package/bin/aiws.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { cliMain } from "../
|
|
3
|
-
import { UserError } from "../
|
|
2
|
+
import { cliMain } from "../dist/cli.js";
|
|
3
|
+
import { UserError } from "../dist/errors.js";
|
|
4
4
|
|
|
5
5
|
try {
|
|
6
6
|
const exitCode = await cliMain(process.argv.slice(2));
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
import { readText } from "./fs.js";
|
|
4
|
+
export async function loadAiwsPackage() {
|
|
5
|
+
const here = fileURLToPath(import.meta.url);
|
|
6
|
+
const rootDir = path.resolve(path.dirname(here), "..");
|
|
7
|
+
const pkg = JSON.parse(await readText(path.join(rootDir, "package.json")));
|
|
8
|
+
const version = String(pkg.version || "").trim() || "0.0.0";
|
|
9
|
+
return { rootDir, version };
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=aiws-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aiws-package.js","sourceRoot":"","sources":["../src/aiws-package.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC;IAC5D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/** All AIWS-managed directories live under this subdirectory */
|
|
2
|
+
export declare const AIWS_DIR = ".aiws";
|
|
3
|
+
/** Changes directory: .aiws/changes/ */
|
|
4
|
+
export declare function changesDir(root: string): string;
|
|
5
|
+
/** Single change directory: .aiws/changes/{changeId}/ */
|
|
6
|
+
export declare function changeDir(root: string, changeId: string): string;
|
|
7
|
+
/** Changes archive: .aiws/changes/archive/ */
|
|
8
|
+
export declare function changesArchiveDir(root: string): string;
|
|
9
|
+
/** Changes templates: .aiws/changes/templates/ */
|
|
10
|
+
export declare function changesTemplatesDir(root: string): string;
|
|
11
|
+
/** Tools directory: .aiws/tools/ */
|
|
12
|
+
export declare function toolsDir(root: string): string;
|
|
13
|
+
/** Tmp directory: .aiws/tmp/ */
|
|
14
|
+
export declare function tmpDir(root: string): string;
|
|
15
|
+
/** Plan directory: .aiws/plan/ */
|
|
16
|
+
export declare function planDir(root: string): string;
|
|
17
|
+
/** Requirements directory: .aiws/requirements/ */
|
|
18
|
+
export declare function requirementsDir(root: string): string;
|
|
19
|
+
/** Issues directory: .aiws/issues/ */
|
|
20
|
+
export declare function issuesDir(root: string): string;
|
|
21
|
+
/** Memory-bank directory: .aiws/memory-bank/ */
|
|
22
|
+
export declare function memoryBankDir(root: string): string;
|
|
23
|
+
/** Secrets directory: .aiws/secrets/ */
|
|
24
|
+
export declare function secretsDir(root: string): string;
|
|
25
|
+
export declare const CHANGES_REL = ".aiws/changes";
|
|
26
|
+
export declare const TOOLS_REL = ".aiws/tools";
|
|
27
|
+
export declare const TMP_REL = ".aiws/tmp";
|
|
28
|
+
export declare const PLAN_REL = ".aiws/plan";
|
|
29
|
+
export declare const REQUIREMENTS_REL = ".aiws/requirements";
|
|
30
|
+
export declare const ISSUES_REL = ".aiws/issues";
|
|
31
|
+
export declare const MEMORY_BANK_REL = ".aiws/memory-bank";
|
|
32
|
+
export declare const SECRETS_REL = ".aiws/secrets";
|
|
33
|
+
export declare function validateStampDir(root: string): string;
|
|
34
|
+
export declare function changeSyncStampDir(root: string): string;
|
|
35
|
+
export declare function changeArchiveStampDir(root: string): string;
|
|
36
|
+
export declare function tmpReviewDir(root: string): string;
|
|
37
|
+
export declare function changeJournalDir(root: string, changeId: string): string;
|
|
38
|
+
export declare function changeEvidenceDir(root: string, changeId: string): string;
|
|
39
|
+
export declare function changeReviewDir(root: string, changeId: string): string;
|
|
40
|
+
export declare function changeAnalysisDir(root: string, changeId: string): string;
|
|
41
|
+
export declare function changeRelPrefix(changeId: string): string;
|
|
42
|
+
export declare function changeEvidenceRelPrefix(changeId: string): string;
|
|
43
|
+
export declare function changeReviewRelPrefix(changeId: string): string;
|
|
44
|
+
export declare const REQUIRED_WRITE_ALLOW_PATHS: string[];
|
|
45
|
+
export declare const REQUIRED_DENY_PATHS: string[];
|
|
46
|
+
export declare const WORKSPACE_SIGNAL_REL: string[];
|
|
47
|
+
export declare const DIR_MIGRATION_MAP: Record<string, string>;
|
|
48
|
+
export declare const FILE_MIGRATION_MAP: Record<string, string>;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
// ── Base directories (all relative to gitRoot/workspaceRoot) ──
|
|
3
|
+
/** All AIWS-managed directories live under this subdirectory */
|
|
4
|
+
export const AIWS_DIR = ".aiws";
|
|
5
|
+
/** Changes directory: .aiws/changes/ */
|
|
6
|
+
export function changesDir(root) {
|
|
7
|
+
return path.join(root, AIWS_DIR, "changes");
|
|
8
|
+
}
|
|
9
|
+
/** Single change directory: .aiws/changes/{changeId}/ */
|
|
10
|
+
export function changeDir(root, changeId) {
|
|
11
|
+
return path.join(root, AIWS_DIR, "changes", changeId);
|
|
12
|
+
}
|
|
13
|
+
/** Changes archive: .aiws/changes/archive/ */
|
|
14
|
+
export function changesArchiveDir(root) {
|
|
15
|
+
return path.join(root, AIWS_DIR, "changes", "archive");
|
|
16
|
+
}
|
|
17
|
+
/** Changes templates: .aiws/changes/templates/ */
|
|
18
|
+
export function changesTemplatesDir(root) {
|
|
19
|
+
return path.join(root, AIWS_DIR, "changes", "templates");
|
|
20
|
+
}
|
|
21
|
+
/** Tools directory: .aiws/tools/ */
|
|
22
|
+
export function toolsDir(root) {
|
|
23
|
+
return path.join(root, AIWS_DIR, "tools");
|
|
24
|
+
}
|
|
25
|
+
/** Tmp directory: .aiws/tmp/ */
|
|
26
|
+
export function tmpDir(root) {
|
|
27
|
+
return path.join(root, AIWS_DIR, "tmp");
|
|
28
|
+
}
|
|
29
|
+
/** Plan directory: .aiws/plan/ */
|
|
30
|
+
export function planDir(root) {
|
|
31
|
+
return path.join(root, AIWS_DIR, "plan");
|
|
32
|
+
}
|
|
33
|
+
/** Requirements directory: .aiws/requirements/ */
|
|
34
|
+
export function requirementsDir(root) {
|
|
35
|
+
return path.join(root, AIWS_DIR, "requirements");
|
|
36
|
+
}
|
|
37
|
+
/** Issues directory: .aiws/issues/ */
|
|
38
|
+
export function issuesDir(root) {
|
|
39
|
+
return path.join(root, AIWS_DIR, "issues");
|
|
40
|
+
}
|
|
41
|
+
/** Memory-bank directory: .aiws/memory-bank/ */
|
|
42
|
+
export function memoryBankDir(root) {
|
|
43
|
+
return path.join(root, AIWS_DIR, "memory-bank");
|
|
44
|
+
}
|
|
45
|
+
/** Secrets directory: .aiws/secrets/ */
|
|
46
|
+
export function secretsDir(root) {
|
|
47
|
+
return path.join(root, AIWS_DIR, "secrets");
|
|
48
|
+
}
|
|
49
|
+
// ── Relative path segments (for string matching, manifest entries, etc.) ──
|
|
50
|
+
export const CHANGES_REL = ".aiws/changes";
|
|
51
|
+
export const TOOLS_REL = ".aiws/tools";
|
|
52
|
+
export const TMP_REL = ".aiws/tmp";
|
|
53
|
+
export const PLAN_REL = ".aiws/plan";
|
|
54
|
+
export const REQUIREMENTS_REL = ".aiws/requirements";
|
|
55
|
+
export const ISSUES_REL = ".aiws/issues";
|
|
56
|
+
export const MEMORY_BANK_REL = ".aiws/memory-bank";
|
|
57
|
+
export const SECRETS_REL = ".aiws/secrets";
|
|
58
|
+
// ── Tmp sub-paths (for stamps etc.) ──
|
|
59
|
+
export function validateStampDir(root) {
|
|
60
|
+
return path.join(root, AIWS_DIR, "tmp", "aiws-validate");
|
|
61
|
+
}
|
|
62
|
+
export function changeSyncStampDir(root) {
|
|
63
|
+
return path.join(root, AIWS_DIR, "tmp", "change-sync");
|
|
64
|
+
}
|
|
65
|
+
export function changeArchiveStampDir(root) {
|
|
66
|
+
return path.join(root, AIWS_DIR, "tmp", "change-archive");
|
|
67
|
+
}
|
|
68
|
+
export function tmpReviewDir(root) {
|
|
69
|
+
return path.join(root, AIWS_DIR, "tmp", "review");
|
|
70
|
+
}
|
|
71
|
+
// ── Convenience: single change subdir helpers ──
|
|
72
|
+
export function changeJournalDir(root, changeId) {
|
|
73
|
+
return path.join(changeDir(root, changeId), "journal");
|
|
74
|
+
}
|
|
75
|
+
export function changeEvidenceDir(root, changeId) {
|
|
76
|
+
return path.join(changeDir(root, changeId), "evidence");
|
|
77
|
+
}
|
|
78
|
+
export function changeReviewDir(root, changeId) {
|
|
79
|
+
return path.join(changeDir(root, changeId), "review");
|
|
80
|
+
}
|
|
81
|
+
export function changeAnalysisDir(root, changeId) {
|
|
82
|
+
return path.join(changeDir(root, changeId), "analysis");
|
|
83
|
+
}
|
|
84
|
+
// ── Relative prefix strings for analyzeEvidencePaths ──
|
|
85
|
+
export function changeRelPrefix(changeId) {
|
|
86
|
+
return `${CHANGES_REL}/${changeId}/`;
|
|
87
|
+
}
|
|
88
|
+
export function changeEvidenceRelPrefix(changeId) {
|
|
89
|
+
return `${CHANGES_REL}/${changeId}/evidence/`;
|
|
90
|
+
}
|
|
91
|
+
export function changeReviewRelPrefix(changeId) {
|
|
92
|
+
return `${CHANGES_REL}/${changeId}/review/`;
|
|
93
|
+
}
|
|
94
|
+
// ── OpenCode env path constants ──
|
|
95
|
+
export const REQUIRED_WRITE_ALLOW_PATHS = [
|
|
96
|
+
".aiws/tmp/",
|
|
97
|
+
".aiws/changes/*/analysis/",
|
|
98
|
+
".aiws/changes/*/review/",
|
|
99
|
+
".aiws/changes/*/evidence/",
|
|
100
|
+
];
|
|
101
|
+
export const REQUIRED_DENY_PATHS = [
|
|
102
|
+
".aiws/secrets/",
|
|
103
|
+
".env*",
|
|
104
|
+
];
|
|
105
|
+
// ── Legacy detection signal paths (for manifest.ts detectLegacyWorkspaceTemplateId) ──
|
|
106
|
+
// These check the NEW layout to detect if workspace is already migrated
|
|
107
|
+
export const WORKSPACE_SIGNAL_REL = [
|
|
108
|
+
"AI_PROJECT.md",
|
|
109
|
+
"REQUIREMENTS.md",
|
|
110
|
+
"AI_WORKSPACE.md",
|
|
111
|
+
".aiws/tools/ws_change_check.py",
|
|
112
|
+
".aiws/tools/requirements_contract.py",
|
|
113
|
+
];
|
|
114
|
+
// ── Migration: old → new directory mapping ──
|
|
115
|
+
export const DIR_MIGRATION_MAP = {
|
|
116
|
+
"changes": ".aiws/changes",
|
|
117
|
+
"tools": ".aiws/tools",
|
|
118
|
+
"requirements": ".aiws/requirements",
|
|
119
|
+
"issues": ".aiws/issues",
|
|
120
|
+
"memory-bank": ".aiws/memory-bank",
|
|
121
|
+
"secrets": ".aiws/secrets",
|
|
122
|
+
".agentdocs": ".aiws",
|
|
123
|
+
"plan": ".aiws/plan",
|
|
124
|
+
};
|
|
125
|
+
// ── Single file migration ──
|
|
126
|
+
export const FILE_MIGRATION_MAP = {
|
|
127
|
+
".ws-change.json": ".aiws/ws-change.json",
|
|
128
|
+
};
|
|
129
|
+
//# sourceMappingURL=aiws-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aiws-paths.js","sourceRoot":"","sources":["../src/aiws-paths.ts"],"names":[],"mappings":"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"}
|
package/dist/backup.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare function formatBackupTimestamp(d: Date): string;
|
|
2
|
+
export interface BackupSessionOptions {
|
|
3
|
+
workspaceRoot: string;
|
|
4
|
+
operation: "init" | "update";
|
|
5
|
+
}
|
|
6
|
+
export interface BackupFileInfo {
|
|
7
|
+
existed: boolean;
|
|
8
|
+
mode: number | null;
|
|
9
|
+
}
|
|
10
|
+
export declare class BackupSession {
|
|
11
|
+
workspaceRoot: string;
|
|
12
|
+
operation: "init" | "update";
|
|
13
|
+
timestamp: string;
|
|
14
|
+
backupRoot: string;
|
|
15
|
+
files: Map<string, BackupFileInfo>;
|
|
16
|
+
protected _prepared: boolean;
|
|
17
|
+
constructor(options: BackupSessionOptions);
|
|
18
|
+
_prepare(): Promise<void>;
|
|
19
|
+
recordFile(relPosix: string, options?: {
|
|
20
|
+
recordMissing?: boolean;
|
|
21
|
+
}): Promise<void>;
|
|
22
|
+
finalize(options?: {
|
|
23
|
+
extra?: any;
|
|
24
|
+
}): Promise<string | null>;
|
|
25
|
+
}
|
|
26
|
+
export declare function resolveBackupRoot(workspaceRoot: string, stamp: string): Promise<string>;
|
|
27
|
+
export declare function rollbackFromBackup(workspaceRoot: string, backupRoot: string): Promise<void>;
|
package/dist/backup.js
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import fs from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { ensureDir, pathExists } from "./fs.js";
|
|
4
|
+
import { joinRel, normalizeRel } from "./path-utils.js";
|
|
5
|
+
import { UserError } from "./errors.js";
|
|
6
|
+
export function formatBackupTimestamp(d) {
|
|
7
|
+
return d.toISOString().replace(/\.\d{3}Z$/, "Z").replaceAll(":", "-");
|
|
8
|
+
}
|
|
9
|
+
export class BackupSession {
|
|
10
|
+
workspaceRoot;
|
|
11
|
+
operation;
|
|
12
|
+
timestamp;
|
|
13
|
+
backupRoot;
|
|
14
|
+
files;
|
|
15
|
+
_prepared;
|
|
16
|
+
constructor(options) {
|
|
17
|
+
this.workspaceRoot = options.workspaceRoot;
|
|
18
|
+
this.operation = options.operation;
|
|
19
|
+
this.timestamp = formatBackupTimestamp(new Date());
|
|
20
|
+
this.backupRoot = path.join(this.workspaceRoot, ".aiws", "backups", this.timestamp);
|
|
21
|
+
this.files = new Map();
|
|
22
|
+
this._prepared = false;
|
|
23
|
+
}
|
|
24
|
+
async _prepare() {
|
|
25
|
+
if (this._prepared)
|
|
26
|
+
return;
|
|
27
|
+
await ensureDir(this.backupRoot);
|
|
28
|
+
this._prepared = true;
|
|
29
|
+
}
|
|
30
|
+
async recordFile(relPosix, options) {
|
|
31
|
+
const rel = normalizeRel(relPosix);
|
|
32
|
+
if (this.files.has(rel))
|
|
33
|
+
return;
|
|
34
|
+
const abs = joinRel(this.workspaceRoot, rel);
|
|
35
|
+
const exists = await pathExists(abs);
|
|
36
|
+
if (!exists) {
|
|
37
|
+
if (options?.recordMissing) {
|
|
38
|
+
this.files.set(rel, { existed: false, mode: null });
|
|
39
|
+
}
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const st = await fs.stat(abs);
|
|
43
|
+
if (!st.isFile()) {
|
|
44
|
+
if (options?.recordMissing)
|
|
45
|
+
this.files.set(rel, { existed: false, mode: null });
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
await this._prepare();
|
|
49
|
+
const dest = joinRel(this.backupRoot, rel);
|
|
50
|
+
await ensureDir(path.dirname(dest));
|
|
51
|
+
await fs.copyFile(abs, dest);
|
|
52
|
+
try {
|
|
53
|
+
await fs.chmod(dest, st.mode & 0o777);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
// ignore chmod errors
|
|
57
|
+
}
|
|
58
|
+
this.files.set(rel, { existed: true, mode: st.mode & 0o777 });
|
|
59
|
+
}
|
|
60
|
+
async finalize(options) {
|
|
61
|
+
if (!this._prepared && this.files.size === 0)
|
|
62
|
+
return null;
|
|
63
|
+
await this._prepare();
|
|
64
|
+
const meta = {
|
|
65
|
+
operation: this.operation,
|
|
66
|
+
timestamp: this.timestamp,
|
|
67
|
+
created_at: new Date().toISOString(),
|
|
68
|
+
files: Array.from(this.files.entries()).map(([p, v]) => ({ path: p, existed: v.existed, mode: v.mode })),
|
|
69
|
+
extra: options?.extra ?? null,
|
|
70
|
+
};
|
|
71
|
+
await fs.writeFile(path.join(this.backupRoot, "backup.json"), JSON.stringify(meta, null, 2) + "\n", "utf8");
|
|
72
|
+
return this.backupRoot;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
export async function resolveBackupRoot(workspaceRoot, stamp) {
|
|
76
|
+
const backupsRoot = path.join(workspaceRoot, ".aiws", "backups");
|
|
77
|
+
if (stamp === "latest") {
|
|
78
|
+
if (!(await pathExists(backupsRoot)))
|
|
79
|
+
throw new UserError("No backups found.");
|
|
80
|
+
const entries = await fs.readdir(backupsRoot, { withFileTypes: true });
|
|
81
|
+
const dirs = entries.filter((e) => e.isDirectory()).map((e) => e.name).sort();
|
|
82
|
+
const latest = dirs[dirs.length - 1];
|
|
83
|
+
if (!latest)
|
|
84
|
+
throw new UserError("No backups found.");
|
|
85
|
+
return path.join(backupsRoot, latest);
|
|
86
|
+
}
|
|
87
|
+
const target = path.join(backupsRoot, stamp);
|
|
88
|
+
if (!(await pathExists(target))) {
|
|
89
|
+
throw new UserError(`Backup not found: ${stamp}`, { details: `Missing: ${target}` });
|
|
90
|
+
}
|
|
91
|
+
return target;
|
|
92
|
+
}
|
|
93
|
+
export async function rollbackFromBackup(workspaceRoot, backupRoot) {
|
|
94
|
+
const metaPath = path.join(backupRoot, "backup.json");
|
|
95
|
+
if (!(await pathExists(metaPath))) {
|
|
96
|
+
throw new UserError("backup.json not found; cannot rollback safely.", { details: `Missing: ${metaPath}` });
|
|
97
|
+
}
|
|
98
|
+
const meta = JSON.parse(await fs.readFile(metaPath, "utf8"));
|
|
99
|
+
const files = Array.isArray(meta.files) ? meta.files : [];
|
|
100
|
+
for (const f of files) {
|
|
101
|
+
const rel = normalizeRel(String(f.path || ""));
|
|
102
|
+
if (!rel)
|
|
103
|
+
continue;
|
|
104
|
+
const dest = joinRel(workspaceRoot, rel);
|
|
105
|
+
if (f.existed) {
|
|
106
|
+
const src = joinRel(backupRoot, rel);
|
|
107
|
+
await ensureDir(path.dirname(dest));
|
|
108
|
+
await fs.copyFile(src, dest);
|
|
109
|
+
if (typeof f.mode === "number") {
|
|
110
|
+
try {
|
|
111
|
+
await fs.chmod(dest, f.mode);
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
// ignore chmod errors
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
if (await pathExists(dest)) {
|
|
120
|
+
await fs.rm(dest, { force: true });
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=backup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../src/backup.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function cliMain(argv: string[]): Promise<number>;
|