Initial import from garrytan/gstack@026751e (main snapshot via local relay)
Some checks failed
Workflow Lint / actionlint (push) Has been cancelled
Build CI Image / build (push) Has been cancelled
Skill Docs Freshness / check-freshness (push) Has been cancelled
Periodic Evals / build-image (push) Has been cancelled
Periodic Evals / evals (map[file:test/codex-e2e.test.ts name:e2e-codex]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/gemini-e2e.test.ts name:e2e-gemini]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-design.test.ts name:e2e-design]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-plan.test.ts name:e2e-plan]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-qa-bugs.test.ts name:e2e-qa-bugs]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-qa-workflow.test.ts name:e2e-qa-workflow]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-review.test.ts name:e2e-review]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-e2e-workflow.test.ts name:e2e-workflow]) (push) Has been cancelled
Periodic Evals / evals (map[file:test/skill-routing-e2e.test.ts name:e2e-routing]) (push) Has been cancelled

Source: https://github.com/garrytan/gstack/commit/026751e
This commit is contained in:
Rocky
2026-05-19 21:18:17 +02:00
commit 834c6db075
797 changed files with 267839 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
/**
* State file TTL security tests
*
* Verifies that state save includes savedAt timestamp and state load
* warns on old state files.
*/
import { describe, test, expect } from 'bun:test';
import * as fs from 'fs';
import * as path from 'path';
const META_SRC = fs.readFileSync(path.join(import.meta.dir, '../src/meta-commands.ts'), 'utf-8');
describe('State file TTL', () => {
test('state save includes savedAt timestamp in output', () => {
// Verify the save code writes savedAt to the state file
const saveBlock = META_SRC.slice(
META_SRC.indexOf("if (action === 'save')"),
META_SRC.indexOf("if (action === 'load')"),
);
expect(saveBlock).toContain('savedAt: new Date().toISOString()');
});
test('state load warns when savedAt is older than 7 days', () => {
// Verify the load code checks savedAt age and warns
const loadStart = META_SRC.indexOf("if (action === 'load')");
// Find the second occurrence of "Usage: state save|load" (appears after the load block)
const loadEnd = META_SRC.indexOf("Usage: state save|load", loadStart);
const loadBlock = META_SRC.slice(loadStart, loadEnd);
expect(loadBlock).toContain('data.savedAt');
expect(loadBlock).toContain('SEVEN_DAYS');
expect(loadBlock).toContain('console.warn');
expect(loadBlock).toContain('days old');
});
});