refactor: remove all uncaged codename references
CI / check (pull_request) Failing after 8m0s

- Remove UNCAGED_CAS_DIR and UNCAGED_WORKFLOW_STORAGE_ROOT env var fallbacks
- Tests updated to use OCAS_DIR / UWF_STORAGE_ROOT
- All docs, READMEs, scripts, workflows, skills updated
- Only symlink migration code retains .uncaged paths (functional requirement)

Closes #12 (Phase 5 complete)
This commit is contained in:
2026-06-03 00:08:45 +08:00
parent e2098e7371
commit 87b893bd28
51 changed files with 214 additions and 271 deletions
@@ -88,7 +88,7 @@ async function setupSuspendedThread(mode: MockAgentMode): Promise<{
cwd: tmpDir,
});
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
await seedThreads(tmpDir, { [THREAD_ID]: startHash });
const outputHash = await store.put(outputSchemaHash, {
@@ -189,7 +189,7 @@ function runUwf(
env: {
...process.env,
WORKFLOW_STORAGE_ROOT: tmpDir,
UNCAGED_CAS_DIR: casDir,
OCAS_DIR: casDir,
},
cwd: tmpDir,
timeout: 30000,
@@ -241,7 +241,7 @@ describe("uwf thread resume", () => {
cwd: tmpDir,
});
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
await seedThreads(tmpDir, { [THREAD_ID]: startHash });
const result = runUwf(["thread", "resume", THREAD_ID], casDir);
@@ -250,9 +250,9 @@ describe("uwf thread resume", () => {
});
test("resume suspended thread executes step and becomes idle", async () => {
const originalCasDir = process.env.UNCAGED_CAS_DIR;
const originalCasDir = process.env.OCAS_DIR;
const { casDir, mockAgentPath } = await setupSuspendedThread("ok");
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
try {
const result = runUwf(["thread", "resume", THREAD_ID, "--agent", mockAgentPath], casDir);
@@ -278,17 +278,17 @@ describe("uwf thread resume", () => {
expect(showResult.suspendMessage).toBeNull();
} finally {
if (originalCasDir === undefined) {
delete process.env.UNCAGED_CAS_DIR;
delete process.env.OCAS_DIR;
} else {
process.env.UNCAGED_CAS_DIR = originalCasDir;
process.env.OCAS_DIR = originalCasDir;
}
}
});
test("resume without -p uses suspend message as agent prompt", async () => {
const originalCasDir = process.env.UNCAGED_CAS_DIR;
const originalCasDir = process.env.OCAS_DIR;
const { casDir, mockAgentPath, promptCapturePath } = await setupSuspendedThread("ok");
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
try {
const result = runUwf(["thread", "resume", THREAD_ID, "--agent", mockAgentPath], casDir);
@@ -298,17 +298,17 @@ describe("uwf thread resume", () => {
expect(capturedPrompt).toBe(SUSPEND_MESSAGE);
} finally {
if (originalCasDir === undefined) {
delete process.env.UNCAGED_CAS_DIR;
delete process.env.OCAS_DIR;
} else {
process.env.UNCAGED_CAS_DIR = originalCasDir;
process.env.OCAS_DIR = originalCasDir;
}
}
});
test("resume with -p appends supplementary info to agent prompt", async () => {
const originalCasDir = process.env.UNCAGED_CAS_DIR;
const originalCasDir = process.env.OCAS_DIR;
const { casDir, mockAgentPath, promptCapturePath } = await setupSuspendedThread("ok");
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
try {
const supplement = "Use the REST API.";
@@ -322,17 +322,17 @@ describe("uwf thread resume", () => {
expect(capturedPrompt).toBe(`${SUSPEND_MESSAGE}\n\n${supplement}`);
} finally {
if (originalCasDir === undefined) {
delete process.env.UNCAGED_CAS_DIR;
delete process.env.OCAS_DIR;
} else {
process.env.UNCAGED_CAS_DIR = originalCasDir;
process.env.OCAS_DIR = originalCasDir;
}
}
});
test("multiple suspend/resume cycles", async () => {
const originalCasDir = process.env.UNCAGED_CAS_DIR;
const originalCasDir = process.env.OCAS_DIR;
const { casDir, mockAgentPath, promptCapturePath } = await setupSuspendedThread("suspend");
process.env.UNCAGED_CAS_DIR = casDir;
process.env.OCAS_DIR = casDir;
try {
const firstResult = runUwf(["thread", "resume", THREAD_ID, "--agent", mockAgentPath], casDir);
@@ -370,9 +370,9 @@ describe("uwf thread resume", () => {
expect(capturedPrompt).toBe(SUSPEND_MESSAGE);
} finally {
if (originalCasDir === undefined) {
delete process.env.UNCAGED_CAS_DIR;
delete process.env.OCAS_DIR;
} else {
process.env.UNCAGED_CAS_DIR = originalCasDir;
process.env.OCAS_DIR = originalCasDir;
}
}
});