Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[$250] [HOLD for payment 2024-02-07] Create centralized types for API params #33965

Closed
roryabraham opened this issue Jan 4, 2024 · 20 comments
Closed
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item. Typescript Migration

Comments

@roryabraham
Copy link
Contributor

roryabraham commented Jan 4, 2024

context: #28695 (comment)

Problem

Currently, we're defining a type for API params before each use of that API endpoint. This could lead to inconsistent application of API params and might make it difficult to know the params (and associated types) accepted by each API endpoint.

Solution

Create a centralized map mapping API endpoint (string) to the params accepted by that endpoint.

Issue OwnerCurrent Issue Owner: @joekaufmanexpensify
Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~017c2ec18790b398be
  • Upwork Job ID: 1754981618246774784
  • Last Price Increase: 2024-02-06
Copy link

melvin-bot bot commented Jan 4, 2024

@roryabraham
Copy link
Contributor Author

While we think this is a good idea in the short-term for its own merits, part of our thinking here is that in the long-term we'll be able to define API params in the API (where they are actually defined), and build some compile-time tool that can generate this map in the front-end so that the front-end is always up-to-date with all of the params accepted by each API endpoint.

@roryabraham
Copy link
Contributor Author

cc @blazejkustra @fabioh8010

@blazejkustra
Copy link
Contributor

Commenting for assignment, thanks for creating this one @roryabraham

@blazejkustra
Copy link
Contributor

blazejkustra commented Jan 9, 2024

I got sick and work half hours, I'll get back to this next week 🤗

@roryabraham
Copy link
Contributor Author

@blazejkustra put up a PR for centralized API params. Overall it looks good but it's very large and as such things would likely go smoother if we break it up into multiple PRs and migrate one actions file at a time.

Unless I'm mistaken these PRs should be almost 100% compile-time type changes, so I think we could loosen the screenshot and review requirements for each, unless there are any runtime changes introduced, as is often the case when types are found to be incorrect in TS migration PRs.

@melvin-bot melvin-bot bot removed the Overdue label Jan 17, 2024
@roryabraham
Copy link
Contributor Author

Chatted with @blazejkustra, I'm ok with doing a single PR as long as our C+ is thoroughly testing. It's a fair amount of overhead to review such a big PR but ultimately it does look quite safe.

@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Weekly KSv2 labels Jan 23, 2024
@blazejkustra
Copy link
Contributor

blazejkustra commented Jan 23, 2024

PR is up and ready for C+ review. @s77rt was selected, please have a look on comments above.

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Jan 31, 2024
@melvin-bot melvin-bot bot changed the title Create centralized types for API params [HOLD for payment 2024-02-07] Create centralized types for API params Jan 31, 2024
Copy link

melvin-bot bot commented Jan 31, 2024

Reviewing label has been removed, please complete the "BugZero Checklist".

@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Jan 31, 2024
Copy link

melvin-bot bot commented Jan 31, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.33-5 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2024-02-07. 🎊

For reference, here are some details about the assignees on this issue:

Copy link

melvin-bot bot commented Jan 31, 2024

BugZero Checklist: The PR adding this new feature has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

  • [@blazejkustra] Please propose regression test steps to ensure the new feature will work correctly on production in further releases.
  • [] Link the GH issue for creating/updating the regression test once above steps have been agreed upon.

@roryabraham
Copy link
Contributor Author

@joekaufmanexpensify assigning you back here to help issue C+ payment to @s77rt for their review of #34542

@joekaufmanexpensify
Copy link
Contributor

Sounds good. Payment here is $250 for TS PR review to @s77rt. Paid via Upwork.

@joekaufmanexpensify joekaufmanexpensify added the External Added to denote the issue can be worked on by a contributor label Feb 6, 2024
@melvin-bot melvin-bot bot changed the title [HOLD for payment 2024-02-07] Create centralized types for API params [$500] [HOLD for payment 2024-02-07] Create centralized types for API params Feb 6, 2024
Copy link

melvin-bot bot commented Feb 6, 2024

Job added to Upwork: https://www.upwork.com/jobs/~017c2ec18790b398be

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Feb 6, 2024
Copy link

melvin-bot bot commented Feb 6, 2024

Current assignee @s77rt is eligible for the External assigner, not assigning anyone new.

@joekaufmanexpensify joekaufmanexpensify removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Feb 6, 2024
@joekaufmanexpensify joekaufmanexpensify changed the title [$500] [HOLD for payment 2024-02-07] Create centralized types for API params [$250] [HOLD for payment 2024-02-07] Create centralized types for API params Feb 6, 2024
Copy link

melvin-bot bot commented Feb 6, 2024

Upwork job price has been updated to $250

@joekaufmanexpensify
Copy link
Contributor

@s77rt offer sent for $250!

@s77rt
Copy link
Contributor

s77rt commented Feb 6, 2024

@joekaufmanexpensify Accepted! Thanks!

@joekaufmanexpensify
Copy link
Contributor

$250 sent and contract ended!

@joekaufmanexpensify
Copy link
Contributor

All set!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item. Typescript Migration
Projects
No open projects
Development

No branches or pull requests

4 participants