Skip to content

refactor(storage): deprecated and remove agfs http mode client#2425

Merged
qin-ctx merged 3 commits into
volcengine:mainfrom
baojun-zhang:agfs-refactor
Jun 4, 2026
Merged

refactor(storage): deprecated and remove agfs http mode client#2425
qin-ctx merged 3 commits into
volcengine:mainfrom
baojun-zhang:agfs-refactor

Conversation

@baojun-zhang
Copy link
Copy Markdown
Collaborator

Description

Remove the legacy AGFS HTTP client path and standardize OpenViking on binding-only RAGFS access. This change also updates typing, tests, and docs so the repository consistently reflects the binding-only AGFS architecture while preserving backward compatibility for deprecated storage.agfs.* config fields such as mode.

Related Issue

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test update

Changes Made

  • Remove the legacy Python AGFSClient HTTP implementation and the Rust ragfs-server HTTP entrypoints and dependencies.
  • Introduce AGFSSyncClientProtocol and update async_client, helpers, QueueFS, and transaction code to depend on a sync AGFS protocol instead of the deleted concrete HTTP client type.
  • Update package exports, recorder wording, tests, fixtures, and zh/en docs to reflect binding-only AGFS access and explicitly warn that AGFS HTTP client mode is no longer supported.

Testing

  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have tested this on the following platforms:
    • Linux
    • macOS
    • Windows

Validation performed locally:

  • cargo build -p ragfs
  • manual ov CLI smoke tests for mkdir, write, read, stat, mv, get, and rm

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

Screenshots (if applicable)

N/A

Additional Notes

  • storage.agfs.mode, url, impl, port, use_ssl, and related legacy fields remain accepted by AGFSConfig and are only warned as deprecated/ignored, so old configs do not fail to parse during startup.
  • The warning added in docs is intentionally scoped to the AGFS HTTP client path only. It does not affect the OpenViking server HTTP API, ov CLI, or AsyncHTTPClient / SyncHTTPClient when they talk to an OpenViking server.

@baojun-zhang baojun-zhang changed the title Agfs refactor refactor(storage): deprecated and remove agfs http mode client Jun 3, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 3, 2026

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🏅 Score: 85
🧪 PR contains tests
🔒 No security concerns identified
✅ No TODO sections
🔀 Multiple PR themes

Sub-PR theme: Remove legacy AGFS HTTP client and add AGFSSyncClientProtocol

Relevant files:

  • openviking/pyagfs/*
  • openviking/storage/*
  • openviking/init.py

Sub-PR theme: Remove RAGFS server HTTP implementation

Relevant files:

  • crates/ragfs/*

Sub-PR theme: Update documentation for binding-only AGFS access

Relevant files:

  • docs/en/*
  • docs/zh/*

Sub-PR theme: Update tests for binding-only AGFS access

Relevant files:

  • tests/*

⚡ No major issues detected

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 3, 2026

PR Code Suggestions ✨

No code suggestions found for the PR.

@baojun-zhang baojun-zhang requested review from chuanbao666, qin-ctx and zhoujh01 and removed request for qin-ctx and zhoujh01 June 4, 2026 05:57
Copy link
Copy Markdown
Collaborator

@qin-ctx qin-ctx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary: requesting changes for one runtime regression in the binding-only AGFS helpers. The overall direction of removing the legacy AGFS HTTP path looks sound.

Non-blocking suggestion: CONTRIBUTING.md still says OpenViking defaults to binding-client mode for AGFS and references AGFS (Go). Since this PR standardizes on RAGFS Rust binding-only access, please update that contributor guidance as well; it cannot be posted as an inline comment because CONTRIBUTING.md is not part of this PR diff.

Comment thread openviking/pyagfs/helpers.py
@qin-ctx qin-ctx merged commit 7e43428 into volcengine:main Jun 4, 2026
13 checks passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in OpenViking project Jun 4, 2026
@baojun-zhang baojun-zhang deleted the agfs-refactor branch June 4, 2026 09:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants