Kết nối với dịch vụ không gian làm việc đã cấu hình

Kết nối với dịch vụ không gian làm việc đã cấu hình, kiểm tra các thử nghiệm và tệp được lưu giữ, rồi áp dụng thay thế trong một tệp đã xem xét kèm cách khôi phục khi có xung đột.

Sử dụng Altifigence CLI 0.1.9 trên Linux để làm việc với dịch vụ không gian làm việc Digital Design Studio hiện có. Người vận hành cung cấp origin của dịch vụ, quyền truy cập không gian làm việc và các tính năng được bật. Các yêu cầu hướng tới tệp và thử nghiệm trong không gian làm việc của dịch vụ đó.

Chỉ đọc kết quả đã lưu khi trạng thái thoát là 0. Lưu riêng luồng lỗi chuẩn và kiểm tra các trường kết quả được mô tả bên dưới.

Cấu hình kết nối

Đặt ALTI_STUDIO_ENDPOINT thành origin do người vận hành cung cấp. Dịch vụ từ xa sử dụng HTTPS; dịch vụ qua địa chỉ IP loopback có thể dùng HTTP. Cung cấp origin có đường dẫn rỗng và cấu hình ALTI_STUDIO_SERVICE_SECRET do người vận hành cung cấp khi bật xác thực. CLI gửi giá trị này qua x-service-secret. Mỗi lệnh cũng có thể chọn origin bằng --endpoint.

Kiểm tra các thử nghiệm và tệp được lưu giữ

Sau khi cấu hình kết nối, liệt kê tối đa 5 thử nghiệm. Không gian làm việc rỗng trả về biên nhận minh họa bên dưới; HTTP 200 kết thúc với mã 0.

alti --json ide service evolve list --limit 5
{"schema":"altifigence.dds.service-receipt.v1","operation":"evolve.list","ok":true,"httpStatus":200,"body":{"runs":[]}}

Đối với kết quả được lưu giữ, sử dụng đường dẫn chính xác của nó trong không gian làm việc của dịch vụ. Thay đường dẫn ví dụ này bằng một tệp có trong không gian làm việc mà bạn được phép truy cập. Phần thân phản hồi giữ nguyên các trường tệp của chủ sở hữu, bao gồm content.

alti --json ide service evolve read-file evolve/adder/results/report.md

Tìm kiếm và thay thế trong một tệp đã xem xét

Tìm kiếm văn bản trong không gian làm việc yêu cầu dịch vụ Linux. Tìm kiếm trên cùng dịch vụ mà bạn sẽ dùng để thay thế, sau đó xem xét tệp khớp, các vị trí và siêu dữ liệu về phạm vi bao phủ. Mỗi kết quả khớp mang một contentHash. CLI giữ nguyên truncated và replaceScopeComplete để bạn đánh giá phạm vi được trả về.

alti --json ide service workspace search --query old_signal --match-case --whole-word

Lưu nội dung sau thành replace.json, thay giá trị băm minh họa gồm 64 ký tự bằng contentHash thực tế của kết quả khớp rtl/top.sv đã chọn. Giữ truy vấn và các tùy chọn nhất quán với nội dung bạn đã xem xét. Yêu cầu nhắm tới một tệp; nếu bỏ match, phép thay thế sẽ áp dụng cho các lần xuất hiện khớp trong tệp đó. Giá trị băm dự kiến ràng buộc cập nhật với phiên bản tệp mà bạn đã xem xét.

{
  "query": "old_signal",
  "replacement": "new_signal",
  "options": {
    "matchCase": true,
    "wholeWord": true
  },
  "paths": [
    "rtl/top.sv"
  ],
  "expectedHashes": {
    "rtl/top.sv": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  }
}
alti --json ide service workspace replace --request replace.json

Khôi phục khi có xung đột và lỗi cấu hình

Nếu tệp đã thay đổi, biên nhận xung đột minh họa được trình bày bên dưới. HTTP 409 kết thúc với mã 1. Chạy lại tìm kiếm trên cùng dịch vụ, xem xét các kết quả khớp và phiên bản tệp hiện tại, rồi cập nhật expectedHashes bằng contentHash mới trước khi gửi yêu cầu thay thế mới.

{"schema":"altifigence.dds.service-receipt.v1","operation":"workspace.replace","ok":false,"httpStatus":409,"body":{"ok":false,"code":"search_replace_conflict","conflicts":[{"path":"rtl/top.sv","expectedHash":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","actualHash":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"}],"replacements":0,"files":[]}}

STUDIO_ENDPOINT_REQUIRED với httpStatus: null kết thúc với mã 2: cấu hình origin của người vận hành rồi chạy lại. Với HTTP 401, lấy bí mật dịch vụ tương ứng từ người vận hành. Nếu hết thời gian chờ sau khi thay thế, cần kiểm tra tệp hiện tại và tìm kiếm lại trước khi quyết định cập nhật thêm.