Page MenuHomePhabricator

Grants API tooling (Fluxx-Meta)
Open, Needs TriagePublic

Description

The CR Grants team wants to enable an API public-data-transfer option for a grants management tool called Fluxx. Enabling the API would allow the sharing of public grant application and reporting data submitted on Fluxx to meta pages. The security team has given this work a preliminary approval—pending a final API output or configuration review to ensure that enabling the API data sharing from Fluxx will not inadvertently reveal more data than desired.

Technical workflow summary:
a) nightly cron job to initiate bot (earlier discussed a mediawiki extention but the team may not need such a robust solution if they can keep all app/reporting editing on Fluxx and keep those revisions limited) b) to call the Fluxx API and gather and parse appropriate data (new proposals or reports or updates to proposals/reports) then c) use the mediawiki edit api to add content to appropriate meta-pages d) when a grant request or grant report is approved, update the appropriate meta-page to show that the content is/was approved and show the most updated approved version.

API tooling needs:
Make an API call to Fluxx to:

  • Get the information to display in text on a meta grant page (and create a new grant page on meta that is closed to further edits not from the API_update account) when a new proposal is submitted to Fluxx and marked as ‘New Proposal’.
  • Get the information to display in text on a meta grant page (and create a new grant page on meta that is closed to further edits not from the API_update account) when a new report is submitted to Fluxx and marked as ‘New Report’.
  • Get the information to display in text on a meta grant page (and the report page) when a grant proposal or report is 'approved' on Fluxx

Use Mediawiki API to:

  • Post an application/report on meta when submitted on Fluxx; example Wiki Movimento Brasil and make the status in the top most box "submitted"
  • Update the text on a grant request or grant report page when the request/report is approved & update the topmost box to say "approved"

Process planning needs:

  • Identify Fluxx API capacity (documentation is high level and sparse)
  • Decide whether to run a time-boxed exploratory project to best assess Fluxx API capacity
  • Identify from where host/run chron/bot job
  • Identify timelines
  • Develop/build
  • Submit updated security review request (when documentation is ready)
  • Submit performance review request (may be a conjoined request with the security review request)
  • Code, once approved, is placed in production

WHY: The CR Grants team is interested in leveraging their grants administration tool, Fluxx, to not only administer grants but to also receive applications and reports through Fluxx. The goal is to reduce manual and redundant data collection methods and improve the application and reporting processes for administrators, program officers, grantees, and prospective grantees. Ultimately, improvements will increase the quality of data and help the grants team setup for devising a reliable, automated pipeline for grant and grantee data.

Event Timeline

CCicalese_WMF added a subscriber: CCicalese_WMF.

Untagging Platform Engineering Team, as we will not be doing this work. We gave the CR Grants team advice. Unsure what project(s) this should be tagged with.

Tagging Community-Relations though I'm not sure if/how much Community-Relations actually uses that tag.

@Aklapper @Iflorez Hi. I am not sure I understand how we could help here.