operator-drive-adapter never starts: Runtime sends allowed_paths, the adapter accepts only base_path

Ouverte
#558 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
54/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
rust
Domaine
api, backend, testing

Piste de recherche

Read the startup caller in elastos/crates/elastos-server/src/server_infra.rs, the BridgeProviderConfig serialization in elastos/crates/elastos-runtime/src/provider/bridge.rs, and the strict parser in capsules/operator-drive-adapter/src/main.rs. Reproduce the refusal with the current wire request, then trace how the other providers preserve path rules. Done means a regression starts the adapter through the Runtime bridge, succeeds at Init, and serves an allowed operation.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Every Home start logs Failed to spawn operator-drive-adapter: provider init failed: invalid_request: unknown field 'allowed_paths', expected 'base_path' or 'extra'.

The Runtime's operator drive startup uses the shared BridgeProviderConfig. ProviderBridge serializes this struct into the Init request, including the default empty allowed_paths, read_only, and encryption_key fields. The adapter accepts only base_path and extra and rejects unknown fields. Main observed the refusal after binary verification on the packaged Jetson trial. Root checked the same caller, wire fields and strict parser in v2.0.0 and 30b166b05. Startup caller · Bridge config · Adapter parser

Pre-existing: the same code is in 2.0.0 (v2.0.0) and unchanged in 2.0.1-rc.1 (30b166b05); seen on the rc.1 Jetson test Home (7 Nov). Not a 2.0.1 regression.

Main owns the fix when this issue reaches the implementation lane. Align the operator drive Init request with the adapter's config. Keep strict decoding and preserve the path rules of the other providers. Add a regression that starts the adapter through the real Runtime bridge and verifies Init succeeds, then proves that the adapter can serve an allowed operation. The current wire request should reproduce the startup refusal in that regression.

Langage dominant
Rust
Étoiles
6
Forks
2
Merge moyen
1 j 3 h
PR mergées (30 j)
42

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de elastos/elastos-runtime

Toutes les issues de elastos/elastos-runtime

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.