Epic/478 python typescript libraries#524
Conversation
…tionality - Introduced `pat-management.tsx` for managing personal access tokens (PATs). - Added UI components for creating, displaying, and deleting PATs. - Implemented dialogs for token creation and token reveal with appropriate user feedback. - Updated `index.ts` to export the new `pat-management` component. - Added npm scripts for publishing Node.js and Python libraries in `package.json`.
… and file management capabilities - Added chat completion methods with detailed usage parsing and structured response handling in `chat.py`. - Improved client initialization with detailed argument descriptions in `client.py`. - Expanded database operations with enhanced credential management and schema retrieval in `database.py`. - Introduced embedding functionalities with usage tracking in `embeddings.py`. - Implemented event triggering capabilities in `events.py`. - Added execution monitoring features in `execution.py`. - Enhanced file management operations including upload, download, and deletion in `files.py`. - Integrated workflow invocation capabilities in `workflows.py`. - Updated LangChain integration with detailed documentation in `langchain.py`. - Added type hints and docstrings for better clarity and usability across the SDK. - Bumped version to 0.1.2 in `pyproject.toml`.
…age when reconnecting to an active stream
… updates + mqtt websocket tcp and udp nodes
|
🚧 Skipped: PR exceeds review size limit. Please split into smaller PRs and re-run. |
There was a problem hiding this comment.
Pull request overview
This pull request introduces comprehensive improvements across documentation, developer experience, website enhancements, and dependency updates. The changes focus on standardizing toolchain management with mise, adding new industry-specific pages, improving developer workflows, and enhancing the website's visual consistency.
Changes:
- Standardized toolchain management using
miseacross all documentation and build processes - Added multi-language industry-specific landing pages (shopfloor, finance, office, AI agents, gov/defense)
- Introduced developer project management features with WASM node development support
- Updated website visual design with reduced opacity gradients and new industry navigation
- Enhanced API client functionality and fixed PAT/API key handling
Reviewed changes
Copilot reviewed 249 out of 759 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
CONTRIBUTING.md |
Updated to use mise for toolchain management and removed outdated Bun-based commands |
Cargo.toml |
Added new dependencies for WebSocket, MQTT, and WASM functionality |
apps/docs/** |
Updated documentation to reference mise commands instead of bun run |
apps/website/src/pages/** |
Added industry-specific pages for 11 languages across 5 industries |
apps/website/src/i18n/** |
Added comprehensive translation files for new industry and developer pages |
apps/website/src/sections/** |
Reduced gradient opacity from .10 to .06 for visual consistency |
apps/desktop/src-tauri/** |
Added developer project management and WASM engine initialization |
apps/web/lib/web-states/user-state.ts |
Fixed PAT API endpoint and timestamp conversion |
Comments suppressed due to low confidence (1)
apps/website/src/content/blog/2026-02-26-alpha-0-0-9.mdx:7
- The blog post is dated 2026-02-26, which is in the future. This should be corrected to the current date or marked appropriately.
draft: true
| .map_err(|e| { | ||
| flow_like_types::anyhow!("Failed to flush run: {}, {:?}", base_path, e) | ||
| })?; | ||
| .map_err(|e| flow_like_types::anyhow!("Failed to flush run: {}, {:?}", base_path, e))?; |
There was a problem hiding this comment.
The formatting change removes multi-line error handling for a single-line version. While this is more concise, consider whether the previous multi-line format improved readability for debugging purposes.
Summary of ChangesHello @felix-schultz, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request focuses on enhancing the developer experience, updating core dependencies, and improving the overall security posture of the project. It introduces a suite of new developer tools for WASM node creation and management, alongside comprehensive documentation updates. The changes aim to make the platform more accessible and robust for custom node development and secure deployment. Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
…ndling in HttpClient and FlowLikeChatModel
….com/TM9657/flow-like into epic/478-python-typescript-libraries
|
🚧 Skipped: PR exceeds review size limit. Please split into smaller PRs and re-run. |
There was a problem hiding this comment.
Code Review
The pull request introduces significant improvements to the developer experience, including a new WASM node development section in the desktop app, comprehensive SDK documentation for Node.js and Python, and a manifest editor. It also standardizes the toolchain management using mise. While the additions are valuable, there are several areas for improvement, particularly regarding security (potential command injection and directory traversal), efficiency (reusing the shared WasmEngine), and adherence to RESTful principles in the PAT management API. Using toml_edit instead of toml for manifest patching would also help preserve user comments and formatting, and error handling for UI state should be improved. Cache invalidation logic for package inspection should also be reviewed.
| "fleet" => "fleet", | ||
| "sublime" => "subl", | ||
| "vim" | "nvim" => "nvim", | ||
| custom => custom, |
There was a problem hiding this comment.
The custom => custom branch in developer_open_in_editor allows executing any arbitrary command available in the system's PATH. While this is a desktop application, it's a security risk if settings can be influenced by untrusted sources. It is recommended to validate the command against a whitelist of allowed editors or ensure it doesn't contain unexpected arguments.
| .await | ||
| .map_err(|e| TauriFunctionError::new(&e.to_string()))?; | ||
|
|
||
| let file_path = target.join(name); |
There was a problem hiding this comment.
Using target.join(name) without validating name could lead to a directory traversal vulnerability if the GitHub API response is compromised or manipulated. Although name is checked for starting with a dot, it's safer to ensure it's a single path component.
let safe_name = Path::new(name).file_name().ok_or_else(|| TauriFunctionError::new("Invalid filename"))?;
let file_path = target.join(safe_name);| let mut doc: toml::Value = | ||
| toml::from_str(&content).map_err(|e| TauriFunctionError::new(&e.to_string()))?; |
There was a problem hiding this comment.
| let engine = Arc::new( | ||
| WasmEngine::new(WasmConfig::default()) | ||
| .map_err(|e| TauriFunctionError::new(&e.to_string()))?, | ||
| ); |
There was a problem hiding this comment.
Creating a new WasmEngine instance on every reload is inefficient as it involves significant overhead. The application already manages a shared WasmEngine via TauriWasmEngineState. You should reuse the shared engine instead.
| let engine = Arc::new( | |
| WasmEngine::new(WasmConfig::default()) | |
| .map_err(|e| TauriFunctionError::new(&e.to_string()))?, | |
| ); | |
| let engine = TauriWasmEngineState::construct(app_handle) | |
| .map_err(|e| TauriFunctionError::new(&e.to_string()))?; |
| let engine = TauriWasmEngineState::construct(&app_handle) | ||
| .map_err(|e| TauriFunctionError::new(&e.to_string()))?; | ||
| let project = PathBuf::from(&project_path); | ||
| let wasm_path = find_wasm_file(&project)?; |
There was a problem hiding this comment.
If find_wasm_file fails, the function returns early using the ? operator, but it doesn't emit the package-status event with an error state. This might leave the UI in a permanent "compiling" state.
let wasm_path = find_wasm_file(&project).map_err(|e| {
let _ = app_handle.emit(
"package-status",
serde_json::json!({ "packageId": format!("dev:{}", project_path), "status": "error" }),
);
e
})?;- Updated `toml` dependency from version 0.8 to 0.9.8 and added `toml_edit` version 0.23.9 for enhanced TOML manipulation. - Modified `developer_open_in_editor` function to return a specific error message for unsupported editors. - Improved file handling in `download_github_dir` by ensuring safe file names are used. - Refactored `patch_manifest` to utilize `toml_edit` for better TOML document manipulation. - Enhanced error reporting in `developer_load_into_catalog` when finding WASM files. - Updated `delete_role` function to clone `app_id` and `role_id` for better ownership handling. - Refactored Python async support in `futures.py` and `streams.py` to streamline function calls and improve readability.
|
🚧 Skipped: PR exceeds review size limit. Please split into smaller PRs and re-run. |
| import componentize_py_runtime | ||
| import weakref | ||
|
|
||
| from typing import TypeVar, Generic, cast, Self, Any, Callable |
| @@ -0,0 +1,15 @@ | |||
| # This file is automatically generated by componentize-py | |||
| # It is not intended for manual editing. | |||
| from typing import TypeVar, Generic, Union, Optional, Protocol, Tuple, List, Any, Self, Callable | |||
| # This file is automatically generated by componentize-py | ||
| # It is not intended for manual editing. | ||
| from typing import TypeVar, Generic, Union, Optional, Protocol, Tuple, List, Any, Self, Callable | ||
| from types import TracebackType |
This pull request introduces several improvements across documentation, developer experience, and codebase dependencies. The most significant updates are a comprehensive overhaul of the developer and security documentation, new dependency additions, and minor codebase enhancements for developer navigation.
Documentation and Developer Experience:
README.mdandCONTRIBUTING.mdto standardize onmiseas the toolchain manager, clarify setup and build instructions, and improve the messaging around local/cloud workflow autonomy. SDK installation instructions and tooling acknowledgments were also updated. [1] [2] [3] [4] [5] [6]SECURITY.mdfile was rewritten to provide a detailed overview of Flow-Like's security architecture, supported versions, reporting process, and scope of security issues. Contact information was updated for clarity. [1] [2]Dependency and Build System Updates:
Cargo.toml, includingtokio-tungstenite,rumqttc,toml,getrandom, anddashmap, to support additional features and improve compatibility. [1] [2]Developer Navigation Improvements:
/developer/exploreand/developer/installedroutes to their new locations under/settings/registry/. Introduced a shared layout for the/developersection. [1] [2] [3]Minor Codebase Enhancements:
Other:
Let me know if you want details about any specific change!