feat(projects): add interactive AI app scaffold skill
This commit is contained in:
@@ -469,7 +469,11 @@ describe('Pi worker process', () => {
|
||||
it('inherits only the worker-safe environment allowlist', () => {
|
||||
const env = buildPiWorkerEnvironment(
|
||||
'D:\\managed-pi',
|
||||
{ MAKELore_PI_SELECTED_API_KEY: 'selected-secret' },
|
||||
'D:\\Makelore App\\Makelore.exe',
|
||||
{
|
||||
MAKELore_PI_SELECTED_API_KEY: 'selected-secret',
|
||||
MAKELORE_NODE_EXECUTABLE: 'D:\\spoofed-node.exe',
|
||||
},
|
||||
{
|
||||
PATH: 'D:\\tools',
|
||||
OPENAI_API_KEY: 'unrelated-openai-secret',
|
||||
@@ -484,12 +488,24 @@ describe('Pi worker process', () => {
|
||||
PI_OFFLINE: '1',
|
||||
PI_TELEMETRY: '0',
|
||||
ELECTRON_RUN_AS_NODE: '1',
|
||||
MAKELORE_NODE_EXECUTABLE: 'D:\\Makelore App\\Makelore.exe',
|
||||
});
|
||||
expect(env).not.toHaveProperty('OPENAI_API_KEY');
|
||||
expect(env).not.toHaveProperty('ANTHROPIC_API_KEY');
|
||||
expect(env).not.toHaveProperty('CUSTOM_APPLICATION_SECRET');
|
||||
});
|
||||
|
||||
it('exposes the direct worker executable to Skill scripts', async () => {
|
||||
const worker = await makeWorker({
|
||||
env: { MAKELORE_NODE_EXECUTABLE: 'spoofed-node' },
|
||||
});
|
||||
|
||||
await expect(worker.request<{ makeloreNodeExecutable: string }>({ type: 'environment' }))
|
||||
.resolves.toMatchObject({
|
||||
data: { makeloreNodeExecutable: process.execPath },
|
||||
});
|
||||
});
|
||||
|
||||
it('refuses to put a selected worker credential in argv', async () => {
|
||||
const secret = 'argv-secret-value';
|
||||
await expect(makeWorker({
|
||||
|
||||
Reference in New Issue
Block a user