Page MenuHomePhabricator

Harbormaster artifacts do not decode Conduit HTTP parameters with proper types
Open, NormalPublic

Description

To reproduce:

  • Call harbormaster.createartifact to create a URI artifact, using HTTP parameters to pass data to Conduit.
  • Attempt to specify true for the URI artifact parameter ui.external.

Actual behavior:

  • Using HTTP parameters, there is no way to specify a value which will be decoded as a strict boolean.
  • Thus, all inputs will fail with a type error on ui.external.

See D16694 and T10456 for previous cases of a similar issue.

Artifacts likely need to expose a more complex type specification, including an HTTPParameterType. Quite possibly, that specification should be an EditField. Then we can apply the approach from D16694 here.