Commit Graph

4153 Commits

Author SHA1 Message Date
SwiftyOS
c7f4bd265d Changed to push to a branch and make a pr 2023-09-19 12:35:04 +02:00
SwiftyOS
de4839b050 Testing build action 2023-09-19 12:11:32 +02:00
SwiftyOS
50842af1e5 Made the action only trigger if the frontend is modified 2023-09-19 12:10:39 +02:00
SwiftyOS
833a37e9a6 Added action to build and commit the frontend 2023-09-19 12:02:50 +02:00
hunteraraujo
bf03dd8739 Refactor runBenchmark in SkillTreeViewModel for New Report Generation Flow
This commit updates the runBenchmark method in the SkillTreeViewModel class to align with the new report generation flow. The updated method does the following:

1. Checks if a benchmark is already running to prevent overlapping runs.
2. Sets a flag to indicate that the benchmark is running and notifies the UI.
3. Reverses the selected node hierarchy for report generation.
4. Loops through each node in the reversed hierarchy to:
  - Generate a unique UUID for each test run.
  - Create a ReportRequestBody object.
  - Call the generateSingleReport method in the BenchmarkService.
  - Update the UI after each single report is generated.

5. After all single reports are generated, it calls the generateCombinedReport method in the BenchmarkService, passing in all the generated UUIDs.

6. Finally, it sets the benchmark running flag to false and notifies the UI.

This change improves the report generation flow and allows for both individual and combined reports.
2023-09-18 19:55:01 -07:00
hunteraraujo
5814c5a365 Change mock property to be required in ReportRequestBody 2023-09-18 19:46:56 -07:00
hunteraraujo
b3d0cf9a22 Add UUID dependency 2023-09-18 19:42:42 -07:00
hunteraraujo
0e069c2679 Add generateCombinedReport Method and Rename Existing Method
This commit introduces two major updates to the BenchmarkService class:

1. Renamed the `generateReport` method to `generateSingleReport` for better clarity and specificity.

2. Added a new method called `generateCombinedReport` that takes a list of test run IDs and generates a combined report by posting to the `/reports/query` endpoint.

These changes aim to improve the modularity and readability of the code, while also extending its functionality to handle combined reports.
2023-09-18 17:15:44 -07:00
hunteraraujo
da9fd926c8 Refactor ReportRequestBody for a single test 2023-09-18 17:09:23 -07:00
merwanehamadi
c09a0e7afa Implement old polling mechanism (#5248)
Implement old polling mechanism

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-18 16:23:06 -07:00
hunteraraujo
8923e79b29 Refactor TaskView to Support Combined Data and Test Suite Detail View
This commit introduces substantial improvements to the TaskView class to accommodate both tasks and test suites in a unified view. It also integrates the TestSuiteDetailView to display test suite details when a test suite is selected.

Key Enhancements:

1. Modified the `initState` method to call `fetchAndCombineData()` from TaskViewModel, thereby populating the combined data source.
2. Replaced the ListView that was rendering tasks with a ListView that can render both tasks and test suites.
3. Introduced conditional rendering for TestSuiteDetailView when a test suite is selected.
4. Updated onTap actions to select and deselect tasks and test suites appropriately.
5. Moved to using a Stack layout to allow overlay of TestSuiteDetailView on top of the existing layout.

This refactor enhances the TaskView's capabilities to manage and display both tasks and test suites, offering a more integrated user experience.
2023-09-18 15:08:22 -07:00
hunteraraujo
93094c7223 Extend TaskViewModel to Support Test Suites and Combined Data Sources
This commit significantly expands the functionalities of TaskViewModel to manage both tasks and test suites in a unified manner. The view model now serves as the primary business logic class that interacts with the UI for task and test suite management.

Key Enhancements:
- Introduced `_testSuites` list to store TestSuite objects.
- Added `combinedDataSource` to hold both tasks and test suites.
- Introduced `selectTestSuite` and `deselectTestSuite` methods for TestSuite selection management.
- Added methods for TestSuite CRUD operations (`addTestSuite`, `fetchTestSuites`, `_saveTestSuitesToPrefs`).
- Created `fetchAndCombineData` method to fetch and combine tasks and test suites into a single list, `combinedDataSource`.

This update provides a more robust and unified approach for managing tasks and test suites, thereby improving the application's modularity and scalability.
2023-09-18 15:03:53 -07:00
hunteraraujo
9f92488443 Add TestSuiteDetailView for Detailed Test Suite Management
This commit introduces a new StatefulWidget, TestSuiteDetailView, to offer a dedicated view for managing and interacting with individual Test Suites.

Key Features:
- Created a TestSuiteDetailView class that takes a TestSuite object and a TaskViewModel as parameters.
- Added an AppBar with a back button for easy navigation.
- Utilized ListView.builder to display a list of tasks that belong to the selected Test Suite.
- Integrated with existing TaskViewModel to select and delete tasks within the Test Suite.
- Included a Provider for the ChatViewModel to update the current task ID when a task is selected.

This new view enhances the user experience by providing a focused interface for managing tasks within individual Test Suites. This facilitates better organization and navigation for the user.
2023-09-18 14:59:26 -07:00
hunteraraujo
3cbe5a84e4 Implement TestSuiteListTile Widget for Displaying Test Suites
This commit adds a new StatelessWidget, TestSuiteListTile, designed to display individual TestSuite items in a list.

Key Features:
- Created a TestSuiteListTile class that takes a TestSuite object and a VoidCallback for the onTap event as parameters.
- Utilized Material Design with custom styling to ensure the tile fits well within the application's UI.
- The tile displays the timestamp of the TestSuite, which serves as its title.
- Included a play arrow icon to indicate that the tile is actionable.
- Utilized MediaQuery to adapt the tile width based on the screen size, capped at a maximum width of 260.

By adding this widget, we improve the UX by providing a consistent and intuitive way to interact with TestSuite objects in the UI.
2023-09-18 14:55:03 -07:00
hunteraraujo
1d735caf40 Add TestSuite Model with Serialization and Deserialization Support
This commit introduces a new class, TestSuite, designed to encapsulate a collection of Task objects under a common timestamp. This will help in grouping tasks that belong to a particular test suite.

Key Features:
- Add a TestSuite class with fields for `timestamp` and a list of `tests` (Task objects).
- Implement `toJson` method for serializing TestSuite objects to JSON-compatible format.
- Implement `fromJson` factory method for deserializing JSON data back into a TestSuite object.

By providing serialization and deserialization support directly in the model, we facilitate easier storage and data exchange for test suites.
2023-09-18 14:41:25 -07:00
hunteraraujo
e446d723ee Extend Task Model to Include Serialization
This commit adds serialization support to the Task model by including a `toJson` method. This will allow easy conversion of Task objects to a JSON-compatible format, facilitating storage or network transmission.
2023-09-18 14:35:34 -07:00
hunteraraujo
e90eb0fd61 Update ApiSettingsViewModel _baseURL 2023-09-18 13:31:48 -07:00
merwanehamadi
79727bd075 Update quick start (#5255)
* Update QUICKSTART.md

* Update QUICKSTART.md

* Update QUICKSTART.md
2023-09-18 13:18:19 -07:00
merwanehamadi
2cf350b783 Agent Protocol v1 (#5254)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-18 11:09:55 -07:00
SwiftyOS
869682a87d Added windows check in the setup script 2023-09-18 17:57:17 +02:00
SwiftyOS
4e2d48b8bd Added benchmarking to the quickstart 2023-09-18 17:56:45 +02:00
SwiftyOS
7022eda1a3 Updated cli 2023-09-18 17:56:23 +02:00
SwiftyOS
af7c5e0291 Fix test listing 2023-09-18 16:40:30 +02:00
SwiftyOS
c1abe0e85f Added running of the agent section 2023-09-18 16:37:54 +02:00
SwiftyOS
060ba0721f Added another origin for requests to the agent server 2023-09-18 16:33:24 +02:00
Swifty
8b3a915b2f Serving frontend from the forge agent server (#5252) 2023-09-18 16:27:03 +02:00
SwiftyOS
7875cb67ec fixed code block 2023-09-18 12:29:26 +02:00
SwiftyOS
f54e334e0d Added basic quickstart guide 2023-09-18 12:28:37 +02:00
SwiftyOS
e38008879a fixed arena enter command 2023-09-18 12:27:09 +02:00
Slaine Willey
ac36f7bfc7 fix broken link - Readme.md (#5246) 2023-09-18 10:55:01 +02:00
SwiftyOS
95f2621a3f Removed benchmark from docker container 2023-09-18 10:49:08 +02:00
SwiftyOS
6d5f93038b fixed imports in autogpt 2023-09-18 09:47:08 +02:00
Reinier van der Leer
b6fd54f599 Unbreak AutoGPT 2023-09-17 22:39:26 +02:00
SwiftyOS
3ea9d6a70f simplified the install script add help instruction 2023-09-17 18:41:06 +02:00
Reinier van der Leer
b181733d59 Protect meta issues from being staled 2023-09-17 16:56:49 +02:00
Reinier van der Leer
d5a88d43a7 AutoGPT: fix docker entrypoint 2023-09-17 16:47:57 +02:00
Reinier van der Leer
11920b8fe5 AutoGPT/v2: First pass with small fixes
* Typing fixes & improvements

* Improved console output formatting

* Added support for all OpenAI GPT-3.5-turbo and GPT-4 model versions

* Added token counting functions to ModelProviders
2023-09-17 16:40:56 +02:00
merwanehamadi
f4d319cee4 Refactor benchmark (#5247)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-17 06:55:20 -07:00
hunteraraujo
4463f75756 Fix issue where side bar view is not disabled 2023-09-16 22:19:42 -07:00
hunteraraujo
60ae12dfd5 Implement UI Disable Feature During Benchmark Run
Added a state variable isBenchmarkRunning in SkillTreeViewModel to track the status of benchmark execution. This state variable is used to conditionally disable specific UI components:

- The "Initiate test suite" button in TaskQueueView is disabled during the benchmark.
- All IconButtons in SideBarView are disabled during the benchmark.
- Node selection in SkillTreeView is disabled during the benchmark.

This ensures that the user cannot interact with these components while a benchmark test is running, thereby improving UX and preventing potential issues.
2023-09-16 19:24:54 -07:00
hunteraraujo
11101286a3 Remove comment 2023-09-16 19:02:45 -07:00
hunteraraujo
6b921b5eda Refactor test suite button + rename method to runBenchmark 2023-09-16 18:56:42 -07:00
hunteraraujo
25ce1d6be0 Fix regression with deleting tasks 2023-09-16 17:28:58 -07:00
merwanehamadi
f76d45cd9e Remove start from agbenchmark (#5241)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-16 17:22:49 -07:00
merwanehamadi
4e43e4be78 Update CI pipy (#5240) 2023-09-16 17:00:46 -07:00
merwanehamadi
ece9e85b41 Add agent protocol within agbenchmark (#5239)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-16 15:31:12 -07:00
hunteraraujo
d48eb99669 Pass Real Data to callGenerateReport in TaskQueueView
This commit updates the `TaskQueueView` to pass real data from the `selectedNodeHierarchy` to the `callGenerateReport` method in `SkillTreeViewModel`. An array of test names is constructed from the reversed node hierarchy, and these names are used as the `tests` field in the `ReportRequestBody`.

Note: The `category` field is now an empty string as per the new requirement, and `mock` continues to be set to true.
2023-09-16 15:14:34 -07:00
merwanehamadi
3e612e97de Update version to 0.0.10 (#5238)
Update pyproject.toml
2023-09-16 15:07:53 -07:00
merwanehamadi
098bcb8b8d Add working directory to agbenchmark pipy CI (#5237) 2023-09-16 14:36:35 -07:00
merwanehamadi
5039f25585 Update CI to release agbenchmark to pypi (#5236) 2023-09-16 14:29:55 -07:00