You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- extended `src/main/tradingview/pine-workflows.js` so Pine Logs evidence-gathering requests can stay verification-first while preserving or auto-appending bounded `get_text` readback
1500
1500
- extended `src/main/tradingview/pine-workflows.js` so Pine Profiler evidence-gathering requests can also stay verification-first while preserving or auto-appending bounded `get_text` readback
1501
1501
- extended `src/main/tradingview/pine-workflows.js` so Pine Version History provenance requests can stay verification-first while preserving or auto-appending bounded `get_text` readback
1502
+
- extended `src/main/tradingview/pine-workflows.js` so Pine Editor visible status/output requests can stay verification-first while preserving or auto-appending bounded `get_text` readback
1502
1503
- added dedicated Pine data-workflow regressions in `scripts/test-tradingview-pine-data-workflows.js`
1503
-
- extended `scripts/test-windows-observation-flow.js` with verified Pine Logs, Pine Profiler, and Pine Version History readback coverage that gathers text without re-entering a screenshot loop
1504
-
- updated `src/main/ai-service/system-prompt.js` so TradingView Pine output/error/provenance requests prefer verified Pine surfaces plus `get_text` over screenshot-only inference
1504
+
- extended `scripts/test-windows-observation-flow.js` with verified Pine Logs, Pine Profiler, Pine Version History, and Pine Editor status/output readback coverage that gathers text without re-entering a screenshot loop
1505
+
- updated `src/main/ai-service/system-prompt.js` so TradingView Pine output/error/provenance requests prefer verified Pine surfaces plus `get_text`, including Pine Editor visible status/output, over screenshot-only inference
- Pine workflows strengthen analysis honesty instead of bypassing it
1563
1564
1564
1565
**Next best slice from here**
1565
-
-extend the same bounded evidence-gathering pattern beyond Pine Version History into broader visible Pine status/output surfaces without implying chart-state insight
1566
+
-refine Pine Editor status/output readback into more structured visible compile-result / diagnostics summaries without implying chart-state insight
assert(tradingViewPineContent.includes("type: 'get_text'"),'TradingView Pine workflows should support bounded Pine Logs readback');
334
334
assert(tradingViewPineContent.includes("text: 'Pine Profiler'"),'TradingView Pine workflows should support bounded Pine Profiler readback');
335
335
assert(tradingViewPineContent.includes("text: 'Pine Version History'"),'TradingView Pine workflows should support bounded Pine Version History readback');
336
+
assert(tradingViewPineContent.includes("text: 'Pine Editor'"),'TradingView Pine workflows should support bounded Pine Editor status/output readback');
336
337
assert(tradingViewPineContent.includes('wantsEvidenceReadback'),'TradingView Pine workflows should detect Pine evidence-gathering requests');
337
338
assert(tradingViewPaperContent.includes("target: 'paper-trading-panel'"),'TradingView Paper workflows should encode paper-trading-panel verification metadata');
338
339
assert(tradingViewPaperContent.includes('paper account'),'TradingView Paper workflows should ground paper-assist keywords');
@@ -348,6 +349,7 @@ test('system prompt guides Pine evidence gathering toward get_text over screensh
348
349
349
350
assert(content.includes('TradingView Pine evidence rule'),'System prompt should include explicit TradingView Pine evidence guidance');
350
351
assert(content.includes('Pine Logs / Profiler / Version History text'),'System prompt should point the model toward Pine text and provenance evidence');
352
+
assert(content.includes('Pine Editor visible status/output'),'System prompt should mention Pine Editor status/output as bounded evidence');
351
353
assert(content.includes('get_text'),'System prompt should mention get_text for Pine evidence gathering');
assert.strictEqual(execResult.success,true,'Execution should proceed after Pine Editor is observed');
528
+
assert.deepStrictEqual(executed,['focus_window','key','get_text'],'Bounded Pine Editor status gathering should continue to read text after panel verification');
529
+
assert.strictEqual(execResult.observationCheckpoints.length,1,'A post-key observation checkpoint should be returned');
530
+
assert.strictEqual(execResult.observationCheckpoints[0].verified,true,'Pine Editor panel observation should pass');
531
+
assert.strictEqual(execResult.results[2].text,'Compiler: no errors. Status: strategy loaded.','Pine Editor status text should be preserved on the get_text result');
532
+
assert(!execResult.screenshotCaptured,'Pine Editor status gathering should not require a screenshot loop');
533
+
});
534
+
});
535
+
469
536
awaittestAsync('low-signal TradingView DOM request wraps the opener with bounded panel verification',async()=>{
- If you do NOT have a screenshot AND the user did NOT provide a Live UI State list, you MUST NOT claim you can see any windows, panels, or elements.
127
127
- In that situation, either use keyboard-only deterministic steps or ask the user to run \`/capture\`.
128
-
- For TradingView requests that ask for concrete output, profiler-style evidence, or script provenance, prefer verified Pine surfaces plus \`get_text\` (for example Pine Logs / Profiler / Version History text) over screenshot-only indicator guesses.
128
+
- For TradingView requests that ask for concrete output, profiler-style evidence, visible Pine Editor status/output, or script provenance, prefer verified Pine surfaces plus \`get_text\` (for example Pine Logs / Profiler / Version History text or Pine Editor visible status/output) over screenshot-only indicator guesses.
129
129
130
130
**TO LIST ELEMENTS**: Read the Live UI State section and list what's there.
131
131
@@ -223,7 +223,7 @@ When the user asks you to DO something, respond with a JSON action block:
223
223
3) perform deterministic selection action,
224
224
4) request screenshot only if all non-visual attempts fail.
225
225
- **Continuity rule**: if the active page title or recent action output indicates the requested browser objective is already achieved, acknowledge completion and avoid proposing additional screenshot steps.
226
-
- **TradingView Pine evidence rule**: if the user wants concrete Pine output, errors, profiler-style evidence, or visible revision/provenance details, prefer \`open/show Pine Logs, Profiler, or Version History\` + verified panel opening + \`get_text\` before relying on screenshot analysis.
226
+
- **TradingView Pine evidence rule**: if the user wants concrete Pine output, errors, profiler-style evidence, visible Pine Editor status/output, or visible revision/provenance details, prefer \`open/show Pine Editor, Logs, Profiler, or Version History\` + verified panel opening + \`get_text\` before relying on screenshot analysis.
227
227
- **If you need to interact with web content inside an app** (like VS Code panels, browser tabs): Use keyboard shortcuts or coordinate-based clicks since web UI may not appear in UIA tree
0 commit comments