Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2866 commits
Select commit Hold shift + click to select a range
f229857
Add BreadcrumbNavigation component to Inputs view for improved breadc…
kanushka Oct 25, 2025
703298a
Refactor FooterButtons component: update props to make startIcon opti…
kanushka Oct 25, 2025
541e0cf
Adjust padding and margin for improved layout consistency, and replac…
kanushka Oct 25, 2025
37d824f
Merge branch 'main' into helper-pane-fix
kanushka Oct 25, 2025
bf432d8
Update workspaces/ballerina/ballerina-visualizer/src/views/BI/HelperP…
kanushka Oct 25, 2025
fd8c618
Update fontCharacter values in package.json for consistency across ex…
kanushka Oct 25, 2025
21c9c52
Rename Utils directory to utils for consistency
kanushka Oct 25, 2025
c458b22
Merge pull request #736 from kanushka/helper-pane-fix
sachiniSam Oct 25, 2025
71ed51d
Reset Query Clauses Panel store when cleanup
KCSAbeywickrama Sep 29, 2025
5d1d0db
Add refresh and reset functionality
KCSAbeywickrama Sep 29, 2025
2138631
Enhance Refresh and Reset buttons with icons, loading indicators and …
KCSAbeywickrama Sep 29, 2025
ae59f83
Gen RPC code for clearTypeCache
KCSAbeywickrama Oct 3, 2025
65c78d8
Clear type cache when refreshing data mapper explicitly
KCSAbeywickrama Oct 5, 2025
38e1f60
Refactor DataMapperHeader to use RefreshResetGroup component for refr…
KCSAbeywickrama Oct 5, 2025
1b1c5db
Refactor RefreshResetGroup to use ActionButton component for refresh …
KCSAbeywickrama Oct 5, 2025
62eb99a
Add vertical divider between RefreshResetGroup and UndoRedoGroup in D…
KCSAbeywickrama Oct 5, 2025
390c083
Add triggerRefresh property to data models and update related hooks f…
KCSAbeywickrama Oct 8, 2025
8bca700
Change initPorts method signature to return a Promise for asynchronou…
KCSAbeywickrama Oct 8, 2025
748e12c
Refactor code formatting for consistency in Hooks and DataMapperView …
KCSAbeywickrama Oct 8, 2025
4760a1a
Update initPorts method signature to allow both Promise and void retu…
KCSAbeywickrama Oct 8, 2025
ec7cfb6
Fix undo-redo stack reset condition to handle side-by-side editing
KCSAbeywickrama Oct 17, 2025
86206b3
works without trigger space
senithkay Oct 25, 2025
0e5e913
Update property valueType to "DATA_MAPPING_EXPRESSION" in completion …
KCSAbeywickrama Oct 25, 2025
36ee64b
Update @playwright/test and playwright-core to version 1.55.1 across …
axewilledge Oct 22, 2025
5689b80
Refactor ConnectorView to directly set connectors from model categori…
axewilledge Oct 25, 2025
ab02789
Update @playwright/test and playwright-core to version 1.55.1 in pnpm…
KCSAbeywickrama Oct 25, 2025
2717831
Merge pull request #737 from KCSAbeywickrama/bi542-dm-expr-bar
KCSAbeywickrama Oct 25, 2025
45c23f0
Merge branch 'ballerina-5.4.2' of github.com:wso2/vscode-extensions i…
KCSAbeywickrama Oct 25, 2025
71bf5cb
Merge pull request #738 from KCSAbeywickrama/bi542-dm-refresh-sidebyside
madushajg Oct 25, 2025
29831de
Add meta data display logic
samithkavishke Oct 25, 2025
cc9a5af
fix bugs AI created
senithkay Oct 25, 2025
c005446
Merge remote-tracking branch 'upstream/ballerina-5.4.2' into ballerin…
axewilledge Oct 26, 2025
fe97b4c
Merge pull request #739 from axewilledge/ballerina-5.4.2-origin
madushajg Oct 26, 2025
25a2395
fix helper and completions behaviour
senithkay Oct 26, 2025
ea24132
Merge branch 'expression-multi-mode-editor' into exp-merge-2
senithkay Oct 26, 2025
2c8e9a2
Remove menu item for aggregating arrays in MappingOptionsWidget
KCSAbeywickrama Oct 26, 2025
fb57c40
Merge pull request #743 from KCSAbeywickrama/bi542-dm-arr-mp-op
madushajg Oct 26, 2025
e114cb9
Enhance data type handling in Data Mapper by adding new TypeKind enum…
madushajg Oct 26, 2025
3d9f37a
Merge pull request #745 from madushajg/dm-5.4.2
madushajg Oct 26, 2025
a23a1ea
Fix nullable record navigation
xlight05 Oct 26, 2025
5605534
Update CHANGELOG for version 1.3.2
madushajg Oct 26, 2025
0e6859c
Merge pull request #747 from madushajg/dm-5.4.2
madushajg Oct 26, 2025
35bb824
Fix int:Signed32 toString issue
xlight05 Oct 26, 2025
8ffea70
Merge pull request #746 from xlight05/datamapper-fix1
xlight05 Oct 26, 2025
41bd854
Update version to ballerina-integrator-1.3.2
choreo-cicd Oct 26, 2025
e4c05d8
Merge pull request #750 from wso2/ballerina-integrator-1.3.2
madushajg Oct 27, 2025
a4fea96
Fix order of tabs in typeEditor
sachiniSam Oct 27, 2025
e5414e3
Merge pull request #753 from sachiniSam/TypeCreatorIssues
sachiniSam Oct 27, 2025
422d5e9
Merge remote-tracking branch 'upstream/main' into bal-release
madushajg Oct 27, 2025
947e6de
Fix not being able to delete chat agent service
dan-niles Oct 26, 2025
4c10339
Fix aspect ratio of connection node widget when node title is too short
dan-niles Oct 26, 2025
46f8236
Remove aspect ratio and box-sizing from Circle component in connectio…
dan-niles Oct 27, 2025
5c5c3b5
Rename "Vector Knowledge Base" to "Knowledge Base"
dan-niles Oct 22, 2025
b2421c4
Add tooltip for items in CardList
dan-niles Oct 22, 2025
7d196a4
Refactor knowledge base handling in BI flow diagram
dan-niles Oct 22, 2025
9059c75
Enhance KnowledgeBaseForm with project path handling and update node …
dan-niles Oct 22, 2025
36e9c2a
Fix formatting in BIFlowDiagram
dan-niles Oct 27, 2025
cb0d9d4
Merge branch 'main' into bal-release
madushajg Oct 27, 2025
6a412f7
Introduce ResourceConfig component for managing configuration proper…
axewilledge Oct 27, 2025
05b59ca
Add record type field extraction in ResourceConfig component
axewilledge Oct 27, 2025
ad952aa
Merge pull request #754 from axewilledge/service-designer
axewilledge Oct 27, 2025
405b0c6
Update ServiceDesigner to include service model in function source co…
axewilledge Oct 27, 2025
a4d22f1
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Oct 27, 2025
e27344e
Add sample value generation context
RadCod3 Oct 26, 2025
cb0e63a
Add flow diagram navigation after databind
RadCod3 Oct 26, 2025
94817d2
Merge branch 'main' into bal-release
madushajg Oct 27, 2025
0289115
Update ServiceDesigner to include service model in resource source co…
axewilledge Oct 27, 2025
2360979
Update checkAndNotifyWebview function to include identifier parameter
axewilledge Oct 27, 2025
3eeb129
Fix scrolling issue when viewSize decreases
sachiniSam Oct 27, 2025
16d86e4
Update typeName on recursive typeCreation
sachiniSam Oct 27, 2025
c0ceb8a
Remove unwated header padding
sachiniSam Oct 27, 2025
97f3362
fix function params
senithkay Oct 27, 2025
f26eb22
remove comments and debug logs
senithkay Oct 27, 2025
85a9a84
Rename the config
samithkavishke Oct 27, 2025
2e50404
clear unused references and change chip color of parameter tokens
senithkay Oct 27, 2025
e82abde
Merge branch 'main' of https://github.com/wso2/vscode-extensions into…
senithkay Oct 27, 2025
f84737b
rename new version to old name
senithkay Oct 27, 2025
2070fec
Merge branch 'main' into azure-ai-search-knowledge-base-support
kanushka Oct 27, 2025
45b33e8
Merge pull request #711 from dan-niles/azure-ai-search-knowledge-base…
kanushka Oct 27, 2025
330fd87
Merge branch 'main' into fix-chat-agent-delete
kanushka Oct 27, 2025
4eb27e2
Merge pull request #744 from dan-niles/fix-chat-agent-delete
kanushka Oct 27, 2025
eb13af2
Merge branch 'main' into TypeCreatorIssues
kanushka Oct 27, 2025
45c4947
Merge pull request #757 from sachiniSam/TypeCreatorIssues
kanushka Oct 27, 2025
013fce8
address PR comments
senithkay Oct 27, 2025
e697e3e
Merge branch 'main' into bal-release
NipunaRanasinghe Oct 27, 2025
aab9253
Merge branch 'main' into issue-1447
samithkavishke Oct 28, 2025
af1584c
Update workspaces/ballerina/ballerina-visualizer/src/views/BI/Service…
samithkavishke Oct 28, 2025
a439e04
Merge pull request #741 from samithkavishke/issue-1447
NipunaRanasinghe Oct 28, 2025
ae4c8a5
Merge branch 'main' into bal-release
kanushka Oct 28, 2025
470ae8e
Merge pull request #752 from madushajg/bal-release
kanushka Oct 28, 2025
09916d6
Merge branch 'main' into databind-support
kanushka Oct 28, 2025
d201e39
Add schema files support for file picker
samithkavishke Oct 28, 2025
7dde68b
Merge pull request #742 from RadCod3/databind-support
kanushka Oct 28, 2025
fe1fac8
Merge branch 'main' into gql-schema-support
kanushka Oct 28, 2025
0a35957
Update resource source code handling to conditionally include service…
axewilledge Oct 28, 2025
7f5287b
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Oct 28, 2025
49b99bd
resolve PR comments and fix the helper and completion open logic
senithkay Oct 28, 2025
867dd1e
Merge pull request #759 from samithkavishke/gql-schema-support
kanushka Oct 28, 2025
9c08074
Merge branch 'main' into service-designer
kanushka Oct 28, 2025
4eb6494
fix reviews
senithkay Oct 28, 2025
ee1adc6
Update only field diagnostics on full form validation
kaumini Oct 28, 2025
f1f2c06
Merge branch 'completeFormValidation' of https://github.com/kaumini/v…
kaumini Oct 28, 2025
c19df1b
Merge branch 'main' into completeFormValidation
kaumini Oct 28, 2025
b99acca
Merge pull request #756 from axewilledge/service-designer
axewilledge Oct 28, 2025
5d8e886
Merge branch 'main' into completeFormValidation
kaumini Oct 28, 2025
8746a0e
Merge pull request #760 from kaumini/completeFormValidation
kaumini Oct 28, 2025
83ae546
Merge branch 'main' into new-expression-editor-exp
kanushka Oct 28, 2025
fdd9580
Merge pull request #758 from senithkay/new-expression-editor-exp
kanushka Oct 28, 2025
f715ebc
Enable visualizing dm for multi-package vscode workspaces
madushajg Oct 29, 2025
8c67384
Fix connection node deformed in design diagram
dan-niles Oct 29, 2025
7ecfbe8
Add target line range for connection config component
dan-niles Oct 29, 2025
8cc0347
Fix condition to check line range in ConnectionConfig component
dan-niles Oct 29, 2025
a2e3da3
Update typeCreator to support nested type creation on popup
sachiniSam Oct 29, 2025
da37ce3
Fix the padding and scroll of popup typeEditor
sachiniSam Oct 29, 2025
4993b2a
Enhance ResourceForm with read-only support for various components
axewilledge Oct 29, 2025
eb88715
Merge pull request #762 from dan-niles/fix-ai-bugs
kanushka Oct 29, 2025
a8c7ca5
Add default type name for newType
sachiniSam Oct 29, 2025
f420db7
Disable wand icon when the user is not authenticated
xlight05 Oct 29, 2025
2ba6c5c
Change the Disable hover message
xlight05 Oct 29, 2025
bc0dad4
Enable edits in low-code for direcories with multiple projects
madushajg Oct 29, 2025
28eb8a4
Merge pull request #763 from xlight05/disable-wand
xlight05 Oct 29, 2025
b02bf39
Merge branch 'main' into multi-package-dir
madushajg Oct 29, 2025
88aab22
Merge pull request #765 from madushajg/multi-package-dir
madushajg Oct 30, 2025
8a514b4
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Oct 30, 2025
ce3efdc
Enhance VisualizerRpcManager to handle artifact updates and manage vi…
axewilledge Oct 30, 2025
f689706
Fix styles and add loader to the editor. also support function params
senithkay Oct 30, 2025
78426f9
Handle validation to support nested typecreation
sachiniSam Oct 30, 2025
f53ae05
Merge remote-tracking branch 'upstream/main' into TypeCreatorIssues
sachiniSam Oct 30, 2025
5a405e8
Fix visualizing constructs when swiching between packages
madushajg Oct 30, 2025
32a7666
Merge remote-tracking branch 'origin/multi-package-dir' into multi-pa…
madushajg Oct 30, 2025
89ca4ee
Merge remote-tracking branch 'upstream/main' into multi-package-dir
madushajg Oct 30, 2025
b592197
Fix visualizing types when swiching between packages
madushajg Oct 30, 2025
af22404
Update workspaces/ballerina/ballerina-visualizer/src/components/Entry…
sachiniSam Oct 30, 2025
a055b9e
Merge pull request #768 from sachiniSam/TypeCreatorIssues
sachiniSam Oct 30, 2025
07b8670
Merge branch 'main' into multi-package-dir
madushajg Oct 30, 2025
b629ff7
Merge pull request #769 from madushajg/multi-package-dir
madushajg Oct 30, 2025
05983c4
fix PR issues
senithkay Oct 30, 2025
7c9f1a3
Merge branch 'main' into exp-editor-styles
kanushka Oct 30, 2025
2db14aa
fix cursor not working when clicked empty spaces in the editor
senithkay Oct 30, 2025
f8ac74f
Merge pull request #766 from senithkay/exp-editor-styles
kanushka Oct 30, 2025
e37deb5
Merge branch 'main' into fix-editor-empty-space-click
kanushka Oct 30, 2025
5f53774
Merge pull request #770 from senithkay/fix-editor-empty-space-click
kanushka Oct 30, 2025
ec009d9
Update FormField type to accept boolean values and refactor ResponseE…
axewilledge Oct 30, 2025
42755f3
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Oct 30, 2025
224fd89
Enhance artifact handling by adding artifactType parameter to resourc…
axewilledge Oct 30, 2025
0163199
Add graphql to support generic cases
samithkavishke Oct 31, 2025
6feed97
Merge branch 'main' into issue-1635
samithkavishke Oct 31, 2025
981caa3
Refactor FormGeneratorNew by removing unused getPatchedFields functio…
axewilledge Oct 31, 2025
bda82dc
fix create new type form overlap and alignment issue in expression ed…
senithkay Oct 31, 2025
a3480d5
Show ArrayOutputFieldWidget regardless of isBodyArrayLitExpr
KCSAbeywickrama Oct 31, 2025
8fdc064
Merge pull request #774 from senithkay/fix-type-form-overlap
kanushka Oct 31, 2025
4a88bea
Merge branch 'main' into bi-dm-root-arr-prv
KCSAbeywickrama Oct 31, 2025
02b51be
Merge branch 'main' into service-designer
axewilledge Oct 31, 2025
859388b
Merge pull request #773 from axewilledge/service-designer
sachiniSam Oct 31, 2025
8e388c9
Merge branch 'main' into bi-dm-root-arr-prv
KCSAbeywickrama Oct 31, 2025
122204f
Merge pull request #775 from KCSAbeywickrama/bi-dm-root-arr-prv
KCSAbeywickrama Oct 31, 2025
438b815
Refactor and reposition ResetRefresh group
KCSAbeywickrama Oct 31, 2025
77fd54f
Remove Refresh button
KCSAbeywickrama Oct 31, 2025
051772a
Remove dependency with the type
samithkavishke Oct 31, 2025
3dd4761
Fix identifier field value gets resetting with default values
sachiniSam Oct 31, 2025
f3e0725
Merge branch 'main' into TypeCreatorIssues
kanushka Oct 31, 2025
e2afeaa
Add ActionIconButton component and refactor RefreshResetGroup to use it
KCSAbeywickrama Oct 31, 2025
e93f59e
Merge pull request #777 from sachiniSam/TypeCreatorIssues
sachiniSam Oct 31, 2025
7a5a4e9
Merge branch 'main' into issue-1635
sachiniSam Oct 31, 2025
b24effd
Remove RefreshResetGroup and Refresh button, add Reset button using A…
KCSAbeywickrama Oct 31, 2025
2b118fb
Merge branch 'main' into bi-dm-clr-all-btn-repos
KCSAbeywickrama Oct 31, 2025
1345078
Merge pull request #772 from samithkavishke/issue-1635
sachiniSam Oct 31, 2025
f5dcba6
Merge branch 'main' into bi-dm-clr-all-btn-repos
madushajg Oct 31, 2025
ef7cc64
Fix navigation after saving svc classType
sachiniSam Oct 31, 2025
cef8aa7
Merge remote-tracking branch 'upstream/main' into TypeCreatorIssues
sachiniSam Oct 31, 2025
25b0091
Merge pull request #776 from KCSAbeywickrama/bi-dm-clr-all-btn-repos
KCSAbeywickrama Oct 31, 2025
da3d425
Merge branch 'main' into TypeCreatorIssues
axewilledge Oct 31, 2025
db6f849
Merge pull request #778 from sachiniSam/TypeCreatorIssues
axewilledge Oct 31, 2025
7385467
Add imported types listed in browse types
sachiniSam Oct 31, 2025
32c434c
Merge remote-tracking branch 'upstream/main' into AddImport
sachiniSam Oct 31, 2025
963314a
Merge pull request #779 from sachiniSam/AddImport
kanushka Oct 31, 2025
737c6fc
Refactor ServiceConfigureView and related components to enhance state…
axewilledge Oct 31, 2025
184d442
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Oct 31, 2025
54d10ff
Add Intersection Observer to track visible sections in ServiceConfigu…
axewilledge Oct 31, 2025
c29c8fa
Enhance ServiceConfigureView with improved scroll handling and state …
axewilledge Oct 31, 2025
3b7e3f4
Update ServiceConfigureView to adjust top offset for scroll handling …
axewilledge Oct 31, 2025
0be083f
Refactor ShellExecution to use current process environment for PATH u…
axewilledge Oct 31, 2025
eeb15bb
Merge pull request #783 from axewilledge/bi-new-user
kanushka Oct 31, 2025
3246de9
Update workspaces/ballerina/ballerina-visualizer/src/views/BI/Service…
kanushka Oct 31, 2025
1749929
Add ExpandedPromptEditor component and URL processing utility functions
dan-niles Oct 28, 2025
696269b
Implement format toolbar for expanded prompt editor
dan-niles Oct 29, 2025
b52352c
Use chip expression editor inside the expanded editor modal
dan-niles Oct 29, 2025
dacd3ea
Add expanded mode functionality to TextModeEditor
dan-niles Oct 31, 2025
21e384a
Update padding and remove unnecessary styles in ChipEditorField
dan-niles Oct 31, 2025
5e621ba
Remove unused expanded mode toggle button from AutoExpandingEditableDiv
dan-niles Oct 31, 2025
5fe8175
Refactor ExpandedPromptEditor and ExpressionEditor to use a textarea …
dan-niles Oct 31, 2025
5d02a4b
Add expanded editor with markdown support
dan-niles Oct 31, 2025
b173b0f
Move markdown preview switcher inside markdown toolbar
dan-niles Oct 31, 2025
9a4c48e
Enhance Markdown functionality by adding key handling for automatic l…
dan-niles Oct 31, 2025
e23ce61
Update styling for expand button in TextAreaEditor and ExpressionEdit…
dan-niles Oct 31, 2025
04f9b1a
Update icons in markdown toolbar
dan-niles Oct 31, 2025
3c47ea5
Refactor styling in ExpandedEditor and MarkdownPreview components
dan-niles Oct 31, 2025
482d6e0
Add expand icon functionality to TextModeEditor and TextAreaEditor co…
dan-niles Oct 31, 2025
d6d5c2e
Remove expand click handler from ExpressionEditor component
dan-niles Oct 31, 2025
cb9ea1f
Remove bi-markdown.svg icon file
dan-niles Oct 31, 2025
5528923
Update background color and border color in MarkdownToolbar component
dan-niles Oct 31, 2025
67e4f77
Restrict expanded mode activation to specific fields in ExpressionEditor
dan-niles Oct 31, 2025
54262f2
Update ExpandedEditor layout and styling
dan-niles Oct 31, 2025
23e4d13
Refactor cursor position handling in PromptMode to use queueMicrotask…
dan-niles Oct 31, 2025
7dbb087
Update MarkdownPreview to prevent rendering of potentially dangerous …
dan-niles Oct 31, 2025
a598845
Merge pull request #780 from dan-niles/ai-prompt-editor
kanushka Nov 1, 2025
6151c64
Merge remote-tracking branch 'upstream/main' into service-designer
axewilledge Nov 1, 2025
fb1f940
Refactor ServiceConfigureView to introduce ChangeMap interface and im…
axewilledge Nov 1, 2025
8a87111
Merge branch 'service-designer' of https://github.com/axewilledge/vsc…
axewilledge Nov 1, 2025
4aab442
Add new icons to wso2 font lib
kanushka Nov 1, 2025
644bf0a
Update function browser button icon in helper pane
kanushka Nov 1, 2025
baf7848
Refactor FloatingButtonIcons and FloatingToggleButton components; upd…
kanushka Nov 1, 2025
3c5bf9d
Refactor styles and layout in ModeSwitcher and ExpressionEditor compo…
kanushka Nov 1, 2025
4c72608
Update type browser button icon in type helper pane
kanushka Nov 1, 2025
439acc6
Refactor TextAreaEditor and AutoExpandingEditableDiv to use FloatingT…
kanushka Nov 1, 2025
199ddd1
Enhance ChipExpressionEditor with SkeletonLoader for loading state; r…
kanushka Nov 1, 2025
ce23f13
Remove loading state from FXButton in ChipExpressionBaseComponent for…
kanushka Nov 1, 2025
9903623
Merge pull request #782 from axewilledge/service-designer
kanushka Nov 1, 2025
52a17c4
Merge branch 'main' into helper-pane-fix
kanushka Nov 1, 2025
b472649
Add sticky footer to avoid save getting hidden
sachiniSam Nov 2, 2025
55f5632
Remove unused typeCreator
sachiniSam Nov 2, 2025
a08a5a5
Merge pull request #789 from sachiniSam:fixScroll
kanushka Nov 3, 2025
0e8e23a
Merge branch 'main' into helper-pane-fix
sachiniSam Nov 3, 2025
55b4ac6
Merge pull request #787 from kanushka/helper-pane-fix
sachiniSam Nov 3, 2025
654ce5e
Prepare for 3.0.0 release
ChinthakaJ98 Nov 3, 2025
3dd53e8
Remove HTTP connector from legacy projects
ChinthakaJ98 Nov 3, 2025
b67b164
Merge branch 'main' into 3.0.0-prepare
ChinthakaJ98 Nov 3, 2025
0c46732
Merge pull request #790 from ChinthakaJ98/3.0.0-prepare
ChinthakaJ98 Nov 3, 2025
546596a
fix delete key behaviour in expression editor
senithkay Nov 3, 2025
da59898
Refactor updateSourceCode calls to include description and artifactDa…
axewilledge Nov 3, 2025
d40fc53
Enhance updateSourceCode function to support skipping payload checks …
axewilledge Nov 3, 2025
09ca9d1
Merge pull request #791 from senithkay/fix-expression-delete-key
kanushka Nov 3, 2025
6f06ace
Merge branch 'main' of https://github.com/wso2/vscode-extensions into…
tharindulak Nov 3, 2025
b8bbafd
Fix sorting logic in NodeSelector to handle undefined names gracefully
axewilledge Nov 3, 2025
39b5f63
Fix issues
tharindulak Nov 3, 2025
13af15d
Add json type support for import tab
sachiniSam Nov 3, 2025
b27b2dc
Format code
sachiniSam Nov 3, 2025
8f4342e
Merge remote-tracking branch 'upstream/main' into fixScroll
sachiniSam Nov 3, 2025
59ff058
Add error handling for usage limit exceeds
xlight05 Nov 2, 2025
1512997
Merge pull request #794 from tharindulak/windows-new
kanushka Nov 3, 2025
cdada7b
Merge branch 'main' into copilot-429
xlight05 Nov 3, 2025
36bb8c8
Merge branch 'main' into fixScroll
sachiniSam Nov 3, 2025
5b2301c
Merge pull request #795 from sachiniSam/fixScroll
sachiniSam Nov 3, 2025
b2646a9
Merge branch 'main' into copilot-429
kanushka Nov 3, 2025
8d52dcc
Merge pull request #796 from xlight05/copilot-429
kanushka Nov 3, 2025
22138ee
Merge branch 'main' into refactor-utils
axewilledge Nov 3, 2025
07192bf
Refactor updateSourceCode calls in ServiceDesignerRpcManager to use n…
axewilledge Nov 3, 2025
a053360
Merge branch 'refactor-utils' of https://github.com/axewilledge/vscod…
axewilledge Nov 3, 2025
a34486a
Merge pull request #797 from axewilledge/refactor-utils
axewilledge Nov 3, 2025
71a82ce
Update version to micro-integrator-3.0.0
choreo-cicd Nov 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
*.tsx @hevayo @gigara @tharindulak
*.css @hevayo @gigara @tharindulak
*.scss @hevayo @gigara @tharindulak
.trivyignore @hevayo @gigara
/workspaces/common-libs/ @hevayo @gigara @tharindulak
/workspaces/mi/ @hevayo @gigara @kaumini
/workspaces/ballerina/ballerina-core/src/interfaces/extended-lang-client.ts @hevayo @axewilledge @kanushka
Expand Down
7 changes: 5 additions & 2 deletions .github/actions/build/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ inputs:
enableCache:
default: true
type: boolean
enableLSCache:
default: false
type: boolean
ballerina:
description: Update Ballerina extension version
type: boolean
Expand Down Expand Up @@ -139,7 +142,7 @@ runs:

- name: Restore MI LS from cache
id: mi-ls-cache
if: ${{ inputs.isPreRelease == 'true' }}
if: ${{ inputs.enableLSCache == 'true' }}
uses: actions/cache@v4
with:
path: workspaces/mi/mi-extension/ls
Expand All @@ -148,7 +151,7 @@ runs:

- name: Restore Ballerina LS from cache
id: ballerina-ls-cache
if: ${{ inputs.isPreRelease == 'true' }}
if: ${{ inputs.enableLSCache == 'true' }}
uses: actions/cache@v4
with:
path: workspaces/ballerina/ballerina-extension/ls
Expand Down
37 changes: 31 additions & 6 deletions .github/actions/pr/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ inputs:
version:
description: 'Publish version'
required: true
isPreRelease:
default: true
type: boolean
chatAPI:
description: 'Google chat API'
required: true
Expand Down Expand Up @@ -97,11 +100,32 @@ runs:
shell: bash
id: commit
run: |
mv .git/config .git/config-old
git remote add origin https://${{ inputs.bot_token }}@github.com/${{ github.repository }}.git
git diff --staged --quiet || git commit -m "Update version to ${{ inputs.version }}"
git checkout -b "${{ inputs.version }}"
git remote set-url origin https://${{ inputs.bot_username }}:${{ inputs.bot_token }}@github.com/$GITHUB_REPOSITORY.git
env:
GH_TOKEN: ${{ inputs.bot_token }}

- name: Create tag
shell: bash
id: create_tag
run: |
git tag ${{ inputs.version }}
git push origin "refs/heads/${{ inputs.version }}" "refs/tags/${{ inputs.version }}"
git push origin "refs/tags/${{ inputs.version }}"

- name: Create release branch
shell: bash
if: ${{ inputs.isPreRelease == 'false' }}
id: create_branch
run: |
git checkout -b "${{ inputs.version }}"
git push origin "refs/heads/${{ inputs.version }}"

- name: Create Pull Request
shell: bash
if: ${{ inputs.isPreRelease == 'false' }}
id: pr
run: |
baseBranch=""
if [ "${{ inputs.ballerina }}" == 'true' ]; then
baseBranch="release-ballerina"
Expand All @@ -119,9 +143,10 @@ runs:
pr=$(gh pr create -B "$baseBranch" -H "${{ inputs.version }}" --title "Merge \"${{ inputs.version }}\" into \"$baseBranch\"" --body '$subject')
echo "prURL=$pr" >> $GITHUB_OUTPUT
env:
GITHUB_TOKEN: ${{ inputs.bot_token }}
GH_TOKEN: ${{ inputs.bot_token }}

- name: "PR Notification"
if: ${{ inputs.isPreRelease == 'false' }}
shell: bash
run: |
body=$(cat << EOF
Expand All @@ -137,13 +162,13 @@ runs:
{
"keyValue": {
"topLabel": "Pull Request",
"content": "${{ steps.commit.outputs.prURL }}",
"content": "${{ steps.pr.outputs.prURL }}",
"button": {
"textButton": {
"text": "Merge",
"onClick": {
"openLink": {
"url": "${{ steps.commit.outputs.prURL }}"
"url": "${{ steps.pr.outputs.prURL }}"
}
}
}
Expand Down
92 changes: 92 additions & 0 deletions .github/chatmodes/ 🎭 planner.chatmode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
description: Use this agent when you need to create comprehensive test plan for a web application or website.
tools: ['edit/createFile', 'edit/createDirectory', 'search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'playwright-test/browser_click', 'playwright-test/browser_close', 'playwright-test/browser_console_messages', 'playwright-test/browser_drag', 'playwright-test/browser_evaluate', 'playwright-test/browser_file_upload', 'playwright-test/browser_handle_dialog', 'playwright-test/browser_hover', 'playwright-test/browser_navigate', 'playwright-test/browser_navigate_back', 'playwright-test/browser_network_requests', 'playwright-test/browser_press_key', 'playwright-test/browser_select_option', 'playwright-test/browser_snapshot', 'playwright-test/browser_take_screenshot', 'playwright-test/browser_type', 'playwright-test/browser_wait_for', 'playwright-test/planner_setup_page']
---

You are an expert web test planner with extensive experience in quality assurance, user experience testing, and test
scenario design. Your expertise includes functional testing, edge case identification, and comprehensive test coverage
planning.

You will:

1. **Navigate and Explore**
- Invoke the `planner_setup_page` tool once to set up page before using any other tools
- Explore the browser snapshot
- Do not take screenshots unless absolutely necessary
- Use browser_* tools to navigate and discover interface
- Thoroughly explore the interface, identifying all interactive elements, forms, navigation paths, and functionality

2. **Analyze User Flows**
- Map out the primary user journeys and identify critical paths through the application
- Consider different user types and their typical behaviors

3. **Design Comprehensive Scenarios**

Create detailed test scenarios that cover:
- Happy path scenarios (normal user behavior)
- Edge cases and boundary conditions
- Error handling and validation

4. **Structure Test Plans**

Each scenario must include:
- Clear, descriptive title
- Detailed step-by-step instructions
- Expected outcomes where appropriate
- Assumptions about starting state (always assume blank/fresh state)
- Success criteria and failure conditions

5. **Create Documentation**

Save your test plan as requested:
- Executive summary of the tested page/application
- Individual scenarios as separate sections
- Each scenario formatted with numbered steps
- Clear expected results for verification

<example-spec>
# TodoMVC Application - Comprehensive Test Plan

## Application Overview

The TodoMVC application is a React-based todo list manager that provides core task management functionality. The
application features:

- **Task Management**: Add, edit, complete, and delete individual todos
- **Bulk Operations**: Mark all todos as complete/incomplete and clear all completed todos
- **Filtering**: View todos by All, Active, or Completed status
- **URL Routing**: Support for direct navigation to filtered views via URLs
- **Counter Display**: Real-time count of active (incomplete) todos
- **Persistence**: State maintained during session (browser refresh behavior not tested)

## Test Scenarios

### 1. Adding New Todos

**Seed:** `tests/seed.spec.ts`

#### 1.1 Add Valid Todo
**Steps:**
1. Click in the "What needs to be done?" input field
2. Type "Buy groceries"
3. Press Enter key

**Expected Results:**
- Todo appears in the list with unchecked checkbox
- Counter shows "1 item left"
- Input field is cleared and ready for next entry
- Todo list controls become visible (Mark all as complete checkbox)

#### 1.2
...
</example-spec>

**Quality Standards**:
- Write steps that are specific enough for any tester to follow
- Include negative testing scenarios
- Ensure scenarios are independent and can be run in any order

**Output Format**: Always save the complete test plan as a markdown file with clear headings, numbered steps, and
professional formatting suitable for sharing with development and QA teams.
<example>Context: User wants to test a new e-commerce checkout flow. user: 'I need test scenarios for our new checkout process at https://mystore.com/checkout' assistant: 'I'll use the planner agent to navigate to your checkout page and create comprehensive test scenarios.' <commentary> The user needs test planning for a specific web page, so use the planner agent to explore and create test scenarios. </commentary></example>
<example>Context: User has deployed a new feature and wants thorough testing coverage. user: 'Can you help me test our new user dashboard at https://app.example.com/dashboard?' assistant: 'I'll launch the planner agent to explore your dashboard and develop detailed test scenarios.' <commentary> This requires web exploration and test scenario creation, perfect for the planner agent. </commentary></example>
77 changes: 77 additions & 0 deletions .github/chatmodes/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# GitHub Copilot Chat Modes for Playwright Testing

This directory contains custom GitHub Copilot chat modes to help with Playwright test automation for the WSO2 VSCode Extensions project.

## Available Chat Modes

### 🎭 Generator (`@generator`)
**Purpose:** Create new Playwright tests from test plans

**Use when:**
- You have a test plan or specification and need to generate automated tests
- You want to create end-to-end browser tests interactively

**Example:**
```
@generator Can you help me generate tests for the Artifact Creation Workflows section?
```

### 🎭 Healer (`@healer`)
**Purpose:** Debug and fix failing Playwright tests

**Use when:**
- Tests are failing and you need to identify the root cause
- You need to update selectors or fix timing issues
- You want to improve test reliability

**Example:**
```
@healer Please debug the failing HTTP Service creation test
```

### 🎭 Planner (`@planner`)
**Purpose:** Create test plans and strategies

**Use when:**
- You need to plan comprehensive test coverage
- You want to document test scenarios before implementation

**Example:**
```
@planner Help me create a test plan for the new Data Mapper feature
```

## Prerequisites

- **GitHub Copilot** subscription with chat access
- **VS Code** with GitHub Copilot extension installed
- **Playwright Test Extension** for VS Code (recommended)

## How to Use

1. Open GitHub Copilot Chat in VS Code (Ctrl+Cmd+I or Cmd+Shift+I)
2. Type `@` followed by the chat mode name (e.g., `@generator`)
3. Provide your request or test plan
4. The agent will use Playwright tools to create or debug tests

## Configuration

Chat modes are defined in markdown files with frontmatter configuration. Each mode:
- Specifies which tools it can access
- Provides specialized instructions for the AI
- Optimizes for specific testing workflows

## Contributing

When adding new chat modes:
1. Create a new `.chatmode.md` file with emoji prefix
2. Define tools and description in frontmatter
3. Provide clear instructions for the AI agent
4. Update this README with usage examples
5. Test the chat mode with real scenarios

## Learn More

- [Playwright Documentation](https://playwright.dev)
- [GitHub Copilot Chat Modes](https://code.visualstudio.com/docs/copilot/copilot-chat)
- [WSO2 Extensions Testing Guide](../../docs/developer-info.md)
58 changes: 58 additions & 0 deletions .github/chatmodes/🎭 generator.chatmode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
description: Use this agent when you need to create automated browser tests using Playwright.
tools: ['search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'playwright-test/browser_click', 'playwright-test/browser_drag', 'playwright-test/browser_evaluate', 'playwright-test/browser_file_upload', 'playwright-test/browser_handle_dialog', 'playwright-test/browser_hover', 'playwright-test/browser_navigate', 'playwright-test/browser_press_key', 'playwright-test/browser_select_option', 'playwright-test/browser_snapshot', 'playwright-test/browser_type', 'playwright-test/browser_verify_element_visible', 'playwright-test/browser_verify_list_visible', 'playwright-test/browser_verify_text_visible', 'playwright-test/browser_verify_value', 'playwright-test/browser_wait_for', 'playwright-test/generator_read_log', 'playwright-test/generator_setup_page', 'playwright-test/generator_write_test']
---

You are a Playwright Test Generator, an expert in browser automation and end-to-end testing.
Your specialty is creating robust, reliable Playwright tests that accurately simulate user interactions and validate
application behavior.

# For each test you generate
- Obtain the test plan with all the steps and verification specification
- Run the `generator_setup_page` tool to set up page for the scenario
- For each step and verification in the scenario, do the following:
- Use Playwright tool to manually execute it in real-time.
- Use the step description as the intent for each Playwright tool call.
- Retrieve generator log via `generator_read_log`
- Immediately after reading the test log, invoke `generator_write_test` with the generated source code
- File should contain single test
- File name must be fs-friendly scenario name
- Test must be placed in a describe matching the top-level test plan item
- Test title must match the scenario name
- Includes a comment with the step text before each step execution. Do not duplicate comments if step requires
multiple actions.
- Always use best practices from the log when generating tests.

<example-generation>
For following plan:

```markdown file=specs/plan.md
### 1. Adding New Todos
**Seed:** `tests/seed.spec.ts`

#### 1.1 Add Valid Todo
**Steps:**
1. Click in the "What needs to be done?" input field

#### 1.2 Add Multiple Todos
...
```

Following file is generated:

```ts file=add-valid-todo.spec.ts
// spec: specs/plan.md
// seed: tests/seed.spec.ts

test.describe('Adding New Todos', () => {
test('Add Valid Todo', async { page } => {
// 1. Click in the "What needs to be done?" input field
await page.click(...);

...
});
});
```
</example-generation>
<example>Context: User wants to test a login flow on their web application. user: 'I need a test that logs into my app at localhost:3000 with username admin@test.com and password 123456, then verifies the dashboard page loads' assistant: 'I'll use the generator agent to create and validate this login test for you' <commentary> The user needs a specific browser automation test created, which is exactly what the generator agent is designed for. </commentary></example>
<example>Context: User has built a new checkout flow and wants to ensure it works correctly. user: 'Can you create a test that adds items to cart, proceeds to checkout, fills in payment details, and confirms the order?' assistant: 'I'll use the generator agent to build a comprehensive checkout flow test' <commentary> This is a complex user journey that needs to be automated and tested, perfect for the generator agent. </commentary></example>
44 changes: 44 additions & 0 deletions .github/chatmodes/🎭 healer.chatmode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
description: Use this agent when you need to debug and fix failing Playwright tests.
tools: ['edit/createFile', 'edit/createDirectory', 'edit/editFiles', 'search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'playwright-test/browser_console_messages', 'playwright-test/browser_evaluate', 'playwright-test/browser_generate_locator', 'playwright-test/browser_network_requests', 'playwright-test/browser_snapshot', 'playwright-test/test_debug', 'playwright-test/test_list', 'playwright-test/test_run']
---

You are the Playwright Test Healer, an expert test automation engineer specializing in debugging and
resolving Playwright test failures. Your mission is to systematically identify, diagnose, and fix
broken Playwright tests using a methodical approach.

Your workflow:
1. **Initial Execution**: Run all tests using playwright_test_run_test tool to identify failing tests
2. **Debug failed tests**: For each failing test run playwright_test_debug_test.
3. **Error Investigation**: When the test pauses on errors, use available Playwright MCP tools to:
- Examine the error details
- Capture page snapshot to understand the context
- Analyze selectors, timing issues, or assertion failures
4. **Root Cause Analysis**: Determine the underlying cause of the failure by examining:
- Element selectors that may have changed
- Timing and synchronization issues
- Data dependencies or test environment problems
- Application changes that broke test assumptions
5. **Code Remediation**: Edit the test code to address identified issues, focusing on:
- Updating selectors to match current application state
- Fixing assertions and expected values
- Improving test reliability and maintainability
- For inherently dynamic data, utilize regular expressions to produce resilient locators
6. **Verification**: Restart the test after each fix to validate the changes
7. **Iteration**: Repeat the investigation and fixing process until the test passes cleanly

Key principles:
- Be systematic and thorough in your debugging approach
- Document your findings and reasoning for each fix
- Prefer robust, maintainable solutions over quick hacks
- Use Playwright best practices for reliable test automation
- If multiple errors exist, fix them one at a time and retest
- Provide clear explanations of what was broken and how you fixed it
- You will continue this process until the test runs successfully without any failures or errors.
- If the error persists and you have high level of confidence that the test is correct, mark this test as test.fixme()
so that it is skipped during the execution. Add a comment before the failing step explaining what is happening instead
of the expected behavior.
- Do not ask user questions, you are not interactive tool, do the most reasonable thing possible to pass the test.
- Never wait for networkidle or use other discouraged or deprecated apis
<example>Context: A developer has a failing Playwright test that needs to be debugged and fixed. user: 'The login test is failing, can you fix it?' assistant: 'I'll use the healer agent to debug and fix the failing login test.' <commentary> The user has identified a specific failing test that needs debugging and fixing, which is exactly what the healer agent is designed for. </commentary></example>
<example>Context: After running a test suite, several tests are reported as failing. user: 'Test user-registration.spec.ts is broken after the recent changes' assistant: 'Let me use the healer agent to investigate and fix the user-registration test.' <commentary> A specific test file is failing and needs debugging, which requires the systematic approach of the playwright-test-healer agent. </commentary></example>
Loading
Loading