Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Main project configuration using a **flat resource model**. Agents, memories, an
"build": "CodeZip",
"entrypoint": "main.py",
"codeLocation": "app/MyAgent/",
"runtimeVersion": "PYTHON_3_14",
"runtimeVersion": "PYTHON_3_13",
"networkMode": "PUBLIC",
"protocol": "HTTP"
}
Expand Down Expand Up @@ -168,7 +168,7 @@ on the next deployment.
"build": "CodeZip",
"entrypoint": "main.py",
"codeLocation": "app/MyAgent/",
"runtimeVersion": "PYTHON_3_14",
"runtimeVersion": "PYTHON_3_13",
"networkMode": "PUBLIC",
"envVars": [{ "name": "MY_VAR", "value": "my-value" }],
"instrumentation": {
Expand Down
2 changes: 1 addition & 1 deletion docs/container-builds.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ In `agentcore.json`, set `"build": "Container"`:
"build": "Container",
"entrypoint": "main.py",
"codeLocation": "app/MyAgent/",
"runtimeVersion": "PYTHON_3_14"
"runtimeVersion": "PYTHON_3_13"
}
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ describe('mapGenerateConfigToAgent', () => {
expect(result.name).toBe('TestProject');
expect(result.build).toBe('CodeZip');
expect(result.entrypoint).toBe('main.py');
expect(result.runtimeVersion).toBe('PYTHON_3_14');
expect(result.runtimeVersion).toBe('PYTHON_3_13');
expect(result.networkMode).toBe('PUBLIC');
expect(result.protocol).toBe('HTTP');
});
Expand Down
16 changes: 15 additions & 1 deletion src/cli/tui/screens/mcp/__tests__/types.test.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
import { AUTHORIZER_TYPE_OPTIONS, ENTER_KB_ID_MANUALLY, SKIP_FOR_NOW, TARGET_TYPE_OPTIONS } from '../types.js';
import {
AUTHORIZER_TYPE_OPTIONS,
ENTER_KB_ID_MANUALLY,
PYTHON_VERSION_OPTIONS,
SKIP_FOR_NOW,
TARGET_TYPE_OPTIONS,
} from '../types.js';
import { describe, expect, it } from 'vitest';

describe('MCP types constants', () => {
Expand Down Expand Up @@ -26,4 +32,12 @@ describe('MCP types constants', () => {
// the screen branches on this exact id when the user picks the manual path.
expect(ENTER_KB_ID_MANUALLY).toBe('__enter_kb_id__');
});

it('PYTHON_VERSION_OPTIONS defaults to a universally-available runtime, not PYTHON_3_14', () => {
// 3.14 is not yet GA in every region, so it must not be the first/highlighted pick.
expect(PYTHON_VERSION_OPTIONS[0]?.id).toBe('PYTHON_3_13');
expect(PYTHON_VERSION_OPTIONS[0]?.id).not.toBe('PYTHON_3_14');
// 3.14 stays selectable for users in supported regions.
expect(PYTHON_VERSION_OPTIONS.some(opt => opt.id === 'PYTHON_3_14')).toBe(true);
});
});
4 changes: 2 additions & 2 deletions src/cli/tui/screens/mcp/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -425,8 +425,8 @@ export const POLICY_ENGINE_MODE_OPTIONS = [
] as const;

export const PYTHON_VERSION_OPTIONS = [
{ id: 'PYTHON_3_14', title: 'Python 3.14', description: 'Latest' },
{ id: 'PYTHON_3_13', title: 'Python 3.13', description: '' },
{ id: 'PYTHON_3_13', title: 'Python 3.13', description: 'Recommended' },
{ id: 'PYTHON_3_14', title: 'Python 3.14', description: 'Not yet available in all regions' },
{ id: 'PYTHON_3_12', title: 'Python 3.12', description: '' },
{ id: 'PYTHON_3_11', title: 'Python 3.11', description: '' },
{ id: 'PYTHON_3_10', title: 'Python 3.10', description: '' },
Expand Down
6 changes: 6 additions & 0 deletions src/schema/__tests__/constants.test.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import {
DEFAULT_PYTHON_VERSION,
LANGUAGE_FRAMEWORK_MATRIX,
ModelProviderSchema,
NetworkModeSchema,
Expand Down Expand Up @@ -75,6 +76,11 @@ describe('RuntimeVersionSchemas', () => {
expect(NodeRuntimeSchema.safeParse('NODE_24').success).toBe(false);
expect(RuntimeVersionSchema.safeParse('RUBY_3_0').success).toBe(false);
});

it('defaults new agents to a universally-available Python runtime (not PYTHON_3_14)', () => {
expect(DEFAULT_PYTHON_VERSION).toBe('PYTHON_3_13');
expect(PythonRuntimeSchema.safeParse(DEFAULT_PYTHON_VERSION).success).toBe(true);
});
});

describe('NetworkModeSchema', () => {
Expand Down
2 changes: 1 addition & 1 deletion src/schema/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ export const PythonRuntimeSchema = z.enum(['PYTHON_3_10', 'PYTHON_3_11', 'PYTHON
export type PythonRuntime = z.infer<typeof PythonRuntimeSchema>;

/** Default Python runtime version for new agents and MCP tools */
export const DEFAULT_PYTHON_VERSION: PythonRuntime = 'PYTHON_3_14';
export const DEFAULT_PYTHON_VERSION: PythonRuntime = 'PYTHON_3_13';

export const NodeRuntimeSchema = z.enum(['NODE_18', 'NODE_20', 'NODE_22']);
export type NodeRuntime = z.infer<typeof NodeRuntimeSchema>;
Expand Down
Loading