Babak K. Shandiz
f8f7b0e09b
fix(agent-task/capi): add GetPullRequestDatabaseID to CapiClient interface
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-08 13:50:09 +01:00
Babak K. Shandiz
abd2d8a06d
test(agent-task/capi): add tests for GetPullRequestDatabaseID
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-08 13:49:27 +01:00
Babak K. Shandiz
f57114accc
feat(agent-task/capi): add GetPullRequestDatabaseID method
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-08 13:48:56 +01:00
Babak K. Shandiz
d80b25fbf2
test(agent-task/capi): add tests for GetSessionByResourceID
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-08 11:27:40 +01:00
Babak K. Shandiz
9b2ecf4c0e
feat(agent-task/capi): add ListSessionsByResourceID method to CapiClient interface
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 16:55:46 +01:00
Babak K. Shandiz
a6dd9c1679
feat(agent-task/capi): add ListSessionsByResourceID
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 16:55:04 +01:00
Babak K. Shandiz
87b772dc83
feat(agent-task/capi): add GetSession method to CapiClient interface
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 12:44:21 +01:00
Babak K. Shandiz
ee8fc06077
test(agent-task/capi): add tests for GetSession
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 12:44:21 +01:00
Babak K. Shandiz
dcadeb75d4
feat(agent-task/capi): add GetSession method
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 12:44:21 +01:00
Babak K. Shandiz
4e1fcf1da9
refactor(agent-task/capi): populate PRs IsDraft
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 12:44:20 +01:00
Babak K. Shandiz
1e36e9f1e3
refactor(agent-task/capi): hydrate user data
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-05 12:44:11 +01:00
Babak K. Shandiz
19e17c54fd
refactor(agent-task/capi): drop embedding of unexported struct
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:56 +01:00
Babak K. Shandiz
585b639273
test(agent-task/capi): add CapiClientMock
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:56 +01:00
Babak K. Shandiz
ab99ee530a
test(agent-task/capi): add go:generate directive to gen mock
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:56 +01:00
Babak K. Shandiz
be8e6f6491
test(agent-task/capi): add tests for job-related methods
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:55 +01:00
Babak K. Shandiz
79602d3334
test(agent-task/capi): add tests for session-related methods
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:55 +01:00
Babak K. Shandiz
0f5fd6ece0
fix(agent-task/capi): handle non-JSON error response
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:54 +01:00
Babak K. Shandiz
77bb72c2d4
fix(agent-task/capi): improve returned errs
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:54 +01:00
Babak K. Shandiz
0138bf3dab
refactor(agent-task/capi): improve pagination
...
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-09-04 20:12:54 +01:00
Kynan Ware
b2f506fd50
Add base branch option to agent task creation
...
Introduces a BaseBranch field to CreateOptions and updates the job creation flow to include the base branch in the payload if specified. The CapiClient and related methods are updated to accept and handle the baseBranch parameter, and tests are added to verify correct behavior when a base branch is provided.
2025-09-03 17:33:38 -06:00
Kynan Ware
21ccabc832
Simplify error handling in CreateJob response
...
Refactored the CreateJob method to decode the response body into the Job struct before checking for error status codes. Error messages are now extracted directly from the Job struct, removing redundant error parsing logic.
2025-09-03 13:01:40 -06:00
Kynan Ware
32bf9159ea
Improve job error handling and update tests
...
Normalizes job API error messages to include status code and text, ensures errors from job polling are surfaced to stderr without halting execution, and updates tests to verify error output and remove outdated fallback behavior.
2025-09-03 12:34:13 -06:00
Kynan Ware
5472fcffe9
Use Job struct in request
...
Refactored CreateJob to use the Job struct as the payload instead of a map, improving consistency and maintainability.
2025-09-03 11:28:16 -06:00
Kynan Ware
9ec10a4d31
Escape URL path parameters in GetJob request
...
Uses url.PathEscape for owner, repo, and jobID in the GetJob API request to ensure proper encoding and prevent issues with special characters.
2025-09-03 10:49:35 -06:00
Kynan Ware
b890f880c0
Escape owner and repo in job creation URL
...
Uses url.PathEscape for owner and repo when constructing the job creation URL to ensure proper encoding and prevent issues with special characters.
2025-09-03 10:48:24 -06:00
Kynan Ware
3574ee9c30
Add agent task creation command and job API
...
Introduces the 'create' subcommand for agent tasks, allowing users to create agent jobs via the Copilot API. Adds job API client methods, job model, and polling logic to retrieve associated pull requests. Includes tests for various job creation scenarios.
2025-09-02 20:42:39 -06:00
Kynan Ware
e750e71288
Add repo-scoped agent session listing support
...
Introduces ListSessionsForRepo to CapiClient and CAPIClient, enabling listing agent sessions for a specific repository. Updates the list command and tests to support repo override and repo-scoped session queries, including error handling and test coverage for repo resolution.
2025-08-29 17:27:04 -06:00
Kynan Ware
ea9dfae3bf
Optimize session pull request hydration logic
...
Replaces linear search with a map for associating sessions with pull requests, improving performance and simplifying code in hydrateSessionPullRequests.
2025-08-29 14:23:43 -06:00
Kynan Ware
5281be467d
Refactor error handling in generatePullRequestNodeID
...
Simplified error handling by inlining the encoder.Encode call and removing redundant comments for improved code clarity.
2025-08-29 14:20:12 -06:00
Kynan Ware
bc1d306c31
Update API query name for session PR fetch
...
Changed the API query from 'FetchPRs' to 'FetchPRsForAgentTaskSessions' in hydrateSessionPullRequests to match updated backend endpoint.
2025-08-29 14:18:45 -06:00
Kynan Ware
13c293f4cf
Refactor variable names in ListSessionsForViewer
...
Renamed 'Sessions' to 'result' for clarity and consistency in the ListSessionsForViewer method when hydrating session pull requests.
2025-08-29 14:12:33 -06:00
Kynan Ware
48012063df
Remove commented-out fields from sessionPullRequest
...
Cleaned up the sessionPullRequest struct by deleting unused commented-out fields related to Author and MergedBy.
2025-08-29 14:11:47 -06:00
Kynan Ware
dd424d85fd
Add agent task listing command and CAPI client
...
Introduces a new 'list' subcommand under agent-task for listing agent tasks. Implements a Copilot API client for fetching agent sessions and hydrating them with pull request data. Updates PullRequest and PRRepository types to support new fields. Adds dependencies for msgpack and tagparser.
Co-Authored-By: Babak K. Shandiz <babakks@github.com>
2025-08-28 22:00:35 -06:00