Skip to content

Commit d96dec6

Browse files
author
DavidQ
committed
Make sample 1902 launch only through Workspace Manager - PR 11.24
1 parent 66cb9e0 commit d96dec6

7 files changed

Lines changed: 117 additions & 4 deletions

docs/dev/codex_commands.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
11
MODEL: GPT-5.3-codex
22
REASONING: medium
3-
COMMAND: Apply UI binding fix for payload asset display
3+
4+
TASK:
5+
Apply PR 11.24.
6+
7+
Find the sample 1902 page/content that renders the visible "Tool Roundtrip Links" section and individual "Open <tool>" links.
8+
9+
Make the smallest targeted change so sample 1902 exposes only:
10+
11+
Open with Workspace Manager
12+
13+
Do not modify tool implementation files unless the sample entry page delegates rendering there.
14+
Do not change payload schema.
15+
Do not change manifest data except where required to remove direct visible sample links.
16+
Do not add fallback links.
17+
Do not touch start_of_day folders.
18+
19+
VALIDATION:
20+
node --check <changed-js-files>
21+
node ./tests/runtime/LaunchSmokeAllEntries.test.mjs --samples --sample-range=1902-1902 --tools
22+
23+
REPORT:
24+
Write docs/dev/reports/PR_11_24_validation.txt with:
25+
- changed files
26+
- before behavior
27+
- after behavior
28+
- validation commands/results

docs/dev/commit_comment.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Bind Workspace Manager UI to embedded payload for asset display - PR 11.23
1+
Make sample 1902 launch only through Workspace Manager - PR 11.24
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
changed files
2+
- samples/index.render.js
3+
- docs/dev/reports/PR_11_24_validation.txt
4+
5+
before behavior
6+
- Sample 1902 rendered the "Tool Roundtrip Links" section with direct "Open <tool>" links.
7+
8+
after behavior
9+
- Sample 1902 renders only one launch action:
10+
- Open with Workspace Manager
11+
- The generic "Tool Roundtrip Links" section is not rendered for sample 1902.
12+
13+
validation commands/results
14+
- node --check "samples/index.render.js"
15+
- PASS
16+
- node ./tests/runtime/LaunchSmokeAllEntries.test.mjs --samples --sample-range=1902-1902 --tools
17+
- PASS (PASS=19 FAIL=0 TOTAL=19)
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# PR 11.24 Validation
2+
3+
Changed files:
4+
-
5+
6+
Before:
7+
- Sample 1902 showed Tool Roundtrip Links and direct Open <tool> links.
8+
9+
After:
10+
- Sample 1902 shows only Open with Workspace Manager.
11+
12+
Validation:
13+
- node --check ...
14+
- node ./tests/runtime/LaunchSmokeAllEntries.test.mjs --samples --sample-range=1902-1902 --tools

docs/dev/reports/launch_smoke_report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Launch Smoke Report
22

3-
Generated: 2026-04-29T15:41:58.002Z
3+
Generated: 2026-04-29T16:01:46.656Z
44

55
Filters: games=false, samples=true, tools=true, sampleRange=1902-1902
66

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# PR 11.24 — Sample 1902 Workspace Manager Only Entry
2+
3+
## Purpose
4+
Make sample 1902 expose only the intended Workspace Manager launch path.
5+
6+
## Problem
7+
Sample 1902 currently shows the legacy "Tool Roundtrip Links" section with direct links to every workspace-supported tool.
8+
9+
## Required Change
10+
Remove or hide the sample-owned direct tool roundtrip link section from sample 1902.
11+
12+
The visible sample page must show only one launch action:
13+
14+
Open with Workspace Manager
15+
16+
## Scope
17+
- Target sample 1902 only.
18+
- Do not modify tool implementations.
19+
- Do not change workspace payload schema.
20+
- Do not change Workspace Manager behavior.
21+
- Do not add replacement direct tool links.
22+
- Do not touch start_of_day folders.
23+
24+
## Acceptance
25+
- Opening sample 1902 shows only "Open with Workspace Manager" as the tool launch action.
26+
- No "Tool Roundtrip Links" heading is visible.
27+
- No direct tool links are visible.
28+
- Workspace Manager still opens sample 1902 payload.
29+
- Runtime smoke for sample 1902 and tools passes.

samples/index.render.js

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import { launchWithExternalToolWorkspaceReset, resolveSampleToolLaunchHref } fro
33

44
const METADATA_PATH = "./metadata/samples.index.metadata.json";
55
const PINNED_KEY = "samples-index-pinned";
6+
const WORKSPACE_MANAGER_PATH = "/tools/Workspace%20Manager/index.html";
7+
const SAMPLE_1902_WORKSPACE_PRESET_PATH = "/samples/phase-19/1902/sample.1902.workspace-all-tools.json";
68

79
function normalize(value) {
810
return typeof value === "string" ? value.trim() : "";
@@ -50,6 +52,20 @@ function normalizePresetPath(value) {
5052
return "";
5153
}
5254

55+
function buildWorkspaceManagerSampleLaunchHref(sample) {
56+
const sampleId = normalize(sample?.id);
57+
if (sampleId !== "1902") {
58+
return "";
59+
}
60+
const params = new URLSearchParams({
61+
tool: "vector-map-editor",
62+
sampleId,
63+
sampleTitle: normalize(sample?.title) || "",
64+
samplePresetPath: SAMPLE_1902_WORKSPACE_PRESET_PATH
65+
});
66+
return `${WORKSPACE_MANAGER_PATH}?${params.toString()}`;
67+
}
68+
5369
function getExplicitRoundtripPresetPath(sample, toolId) {
5470
const safeToolId = normalizeToken(toolId);
5571
if (!safeToolId) {
@@ -337,7 +353,19 @@ function buildSampleCard(sample) {
337353
card.appendChild(title);
338354
card.appendChild(previewWrap);
339355
card.appendChild(description);
340-
if (Array.isArray(sample.roundtripLinks) && sample.roundtripLinks.length > 0) {
356+
if (sample.id === "1902") {
357+
const workspaceLaunchHref = buildWorkspaceManagerSampleLaunchHref(sample);
358+
if (workspaceLaunchHref) {
359+
const workspaceLaunchSection = document.createElement("section");
360+
workspaceLaunchSection.className = "sample-tool-roundtrip";
361+
workspaceLaunchSection.innerHTML = `
362+
<ul>
363+
<li><a data-tool-launch-href="${escapeHtml(workspaceLaunchHref)}" href="${escapeHtml(workspaceLaunchHref)}">Open with Workspace Manager</a></li>
364+
</ul>
365+
`;
366+
card.appendChild(workspaceLaunchSection);
367+
}
368+
} else if (Array.isArray(sample.roundtripLinks) && sample.roundtripLinks.length > 0) {
341369
const roundtripSection = document.createElement("section");
342370
roundtripSection.className = "sample-tool-roundtrip";
343371
roundtripSection.innerHTML = `

0 commit comments

Comments
 (0)