microsoft / microsoft/typespec

[Bug]: opExample does not account for visibility

Open
#4,240 1 comment 0 reactions 0 assignees View on GitHub
bug compiler:core needs-area triaged:core
Dominant language
Java
Stars
5.9k
Forks
394
Avg merge
1d 23h
Merged PRs (30d)
104

Description

### Describe the bug

If you want to write an `opExample` decorator for an operation that uses visibility, you will have to provide all the parameters regardless of the visibility of the parameter.

### Reproduction

```
@opExample(#{
parameters: #{
request: #{
name: "Resource Name",
},
},
})
```
This should be a valid decorator for the following operation.
But it ask you for the id as well.

```
@route("/resources")
interface Service {
@post
@operationId("createResource")
@summary("Create resource")
@doc("Create a resource.")
createAsset(
@bodyRoot request: Resource,
): Resource | ErrorResponse;
}

model Resource {
@visibility("read")
id: string;
name: string;
// ...props
}
```
Or am I missing something?

### Checklist

- [X] Follow our [Code of Conduct](https://github.com/microsoft/typespec/blob/main/CODE_OF_CONDUCT.md)
- [X] Check that there isn't already an issue that request the same bug to avoid creating a duplicate.
- [X] Check that this is a concrete bug. For Q&A open a [GitHub Discussion](https://github.com/Microsoft/typespec/discussions).
- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.