oxidecomputer / oxidecomputer/openapi-lint

Idea: require that timestamps start with time_

Open
#5 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
12
Forks
4
PR merge metrics
No merged PRs in 30d

Description

In oxide.ts, I want to parse dates in API responses at runtime. The data required to do that robustly is there in the spec (format: date-time), but I can avoid figuring out how to tag fields with that info for use at runtime if I can instead rely on a name convention. Right now this rule is already almost being followed in Nexus — the only exception is the created field on TimeseriesSchema which is probably (hopefully) a mistake anyway.

Ideally this would be an if-and-only-if situation: time_* fields must be date-time and date-time fields must be time_*.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the openapi-lint repository and the referenced oxide.ts schema, then inspect how the existing rules represent field names and OpenAPI formats. Compare the proposed time_* convention with the date-time fields, including TimeseriesSchema.created, and define completion as enforcing both directions of the rule with appropriate validation coverage.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi, rust
Domain
api, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.