Skip to content

[codex] Expose core workflow API endpoints - #212

Merged
jkendall327 merged 1 commit into
mainfrom
codex-209-expose-core-api-workflows
May 31, 2026
Merged

[codex] Expose core workflow API endpoints#212
jkendall327 merged 1 commit into
mainfrom
codex-209-expose-core-api-workflows

Conversation

@jkendall327

Copy link
Copy Markdown
Owner

Summary

Refs #209.

This adds a broader REST control-plane slice for the workflows that were still trapped behind Blazor viewmodels or direct service calls:

  • media details by hash, including repository, tags, notes, and media URL
  • notes list/create/update/delete endpoints
  • tag read and autocomplete suggestion endpoints
  • repository transition endpoint for inbox/archive/trash moves
  • duplicate scan/list/resolve endpoints
  • download queue/status/result/pause/resume/cancel/retry endpoints
  • subscription list/create/delete endpoints instead of the previous NotImplementedException
  • /files/query/count for API-side search result counts
  • typed API DTOs for the newly exposed durable workflow routes
  • OctansClient.ImportFilesAsync now matches the server contract by returning the accepted import job rather than the old synchronous ImportResult

Notes

This keeps the existing /files and /files/query routes compatible for now, so they still expose HashItem. A later pass can move those legacy routes onto stable file/result DTOs and add paging/structured query errors without breaking the current client surface in the same PR.

Validation

  • dotnet test Octans.slnx -m:1

@jkendall327
jkendall327 marked this pull request as ready for review May 31, 2026 11:15
@jkendall327
jkendall327 merged commit 68f454e into main May 31, 2026
1 check passed
@jkendall327
jkendall327 deleted the codex-209-expose-core-api-workflows branch May 31, 2026 11:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant