openGRIS - Standard Project Contribution and Onboarding
1. Describing The Contribution
Business Problem
Describe the business problem the contribution solves
Large financial organizations have a collection of distributed compute resources - physical severs, virtual instances, cloud compute (AWS, GCP, ....) and grids (e.g. IBM Symphony). The second problem is that capacity on these grids is often statically allocated and and workloads cannot dynamically resource up and down. There are multiple challenges around utilizing different compute resources efficiently which means grids often runs at low utilization (30% or below) and also worsen climate impact.
Proposed Solution
Describe the type of contribution (project or working group) and how it solves that business problem
openGRIS is an open Standard for Grid Resource Scheduling with client and worker standards to tie resources together and share them in a cost-effective and climate friendly way. openGRIS aims to provide a standard to allow different hardware and compute pools to be effectively addressed by applications across the organization - production batch processes, on-demand compute from notebooks, etc. The goal is on one side to easily unlock "elastic-compute" on demand and on the other hand enable pools of compute to be more effectively utilized. openGRIS draws inspiration from services AWS Lambda and BigQuery and software tools like Dask and Spark to propose a cloud provider and hardware independent standard.
Scope
Clearly define the scope of the standard. In cases where the scope is expected to be defined by the standard project participants this should be one of the first tasks the group completes. Guidelines can be found in the Community Specification documentation.
openGRIS will specify a definition for compute payloads for routing to compute backends. This definition will include elements which have come up in discussion with FinOS members (Intel, Nvidia, IBM and AWS) and can include directives for GPU and wide Vector instructions.
openGRIS will also specify policies which can define how those payloads are routed to various compute backends. These policies can have time and cost preferences. Finally, the definition of backends will be left out of the scope of the initial standard but the standard can be later expanded to definition and categorization of compute backends.
Tentative Roadmap and Current State
Describe the short and medium term goals and phases of the project. What does success look like for this project?
| Category | Milestone | Target Date | Status | Comments |
|---|---|---|---|---|
| Proposal | Standard 1.0 | 6/30/24 | Done | |
| Implementation | Reference Implementation | 7/30/24 | Done | |
| Implementation | Open Source Scaler | 9/30/24 | Done | github.com/citi/scaler |
| Proposal | 1.0 Discussion with Nvidia, AWS, Intel, IBM | 9/30/24 | Done | |
| Proposal | Formalize Standard 2.0 | 2/15/25 | Done | Standard 2.0 |
| Implementation | Interface to IBM Symphony | 1/30/25 | Done | Done |
| Implementation | EC2 Static Compute Adapter | 4/30/25 | Pending | |
| Implementation | Multi-language bindings: C++ | 6/30/25 | Pending | |
| Implementation | Time based Policies for Scheduling | 9/30/25 | Pending | |
| Implementation | Dynamic Scaling for Symphony and EC2 | 10/30/25 | Pending | |
| Implementation | Multi-Environment support via Docker/Podman | 11/30/25 | Pending | |
| Implementation | AWS HTC Grid Adapter | TBD | Pending | |
| See detailed architecture and roadmap here. |
Existing Materials
If materials already exist, provide a link to them that Foundation staff can access - if it's in a private GitHub.com repositories, you should invite the finos-admin user with R/O permissions to those repositories
- [ X] GitHub / GitLab Repository (delete as appropriate)
- [ X] URL for the repository (if it exists) See above
- [ ] Project Name (enter here)
- [ ] @finos-admin has been given read-only permissions if private
- [ ] Is Continuous Integration used? If so, which system is used?
- [ ] Was the project ever released? (yes / no)
- [ ] If so, are releases public? (yes / no)
- [ ] And what's the latest released version?
- [ ] Existing Project Documentation ( URL / microsite / PDF etc detail here)
- [ ] Does the name have a registered trademark? (yes / no)
- [ ] Is there a logo? (yes / no)
- [ ] High-Level Presentation prepared for Technical Oversight Committee (~15 mins)
- [ ] Are meetings currently held for the project? (yes / no + details)
- [ ] Are meeting minutes, agenda and attendance tracked? (yes / no + details)
Development Team
Maintainers
Who will be the project maintainer(s)? Provide full name, affiliation, work email address, and GitHub / GitLab username.
| Name | Affiliation | Work Email Address | Github / GitLab username |
|---|---|---|---|
| Zhuo Yin | Citi | [email protected] | @sharpener6 |
Confirmed contributors
If applicable, list all of the individuals that have expressed interest in and/or are committed to contributing to this project, including full name, affiliation, work email address, and GitHub.com username
| Name | Affiliation | Work Email Address | Github / GitLab username |
|---|---|---|---|
| Raphael Javaux | Citi | [email protected] | @rafa-be |
| George Lewis | Citi | [email protected] | @magniloquency |
Target Contributors
Describe the contributor profile (background, position, organization) you would like to get contributions from. Engineers at Financial Institutions and software and hardware vendors (AWS, IBM, Google, HP, etc.)
Project Communication Channel(s)
- [ ] Contributor to ask maintainers which communications channels they'd like to use:
- Asynchronous
- [X ] GitHub Issues (public)
- [ X] GitHub Discussions (public)
- [ ] GitHub Team Discussions (consisting of the above described contributors)
- [ ] Public
- [ ] Private
- [ ] Mailing-list (groups.io)
- [ ] FINOS Slack Channel (consisting of the above described contributors)
- [ ] General (public) (supply channel name)
- [ ] Leadership (private) (supply channel name)
- Synchronous
- [ ] Recurring meetings
Approval (Lead: FINOS Infra)
- [ ] Assign issue to Executive Director (@mindthegab) to trigger voting (optional). If additional socialization is required, the Executive Director may bring standards projects to the FINOS Governing Board
- [ ] FINOS accepts the contribution/new standard project (and the contribution process can move forward)
Assets transfer (optional - Lead: FINOS Infra)
- [ ] Check GitHub repository transfer requirements:
- [ ] finos-admin has
Adminto all repositories to transfer - [ ] finos-admin ia allowed to transfer repositories out of the org
- [ ] if the repository is owned by a user (and not an org), the user must be able to transfer the repository to finos-admin
- [ ] finos-admin has
- [ ] Transfer all code assets as GitHub repositories under github.com/finos
- [ ] Invite GitHub usernames to GitHub FINOS Org
- [ ] Create
<project-name>-maintainersGitHub team and invite users - [ ] Configure
finos-adminsandfinos-staffteam permissions
Infra setup (Lead: FINOS Infra)
- [ ] Update release coordinates and code namespace to include
finos(best effort) - [ ] Update project badge
- [ ] Update project README
- [ ] Aggregate mailing lists to [email protected]
- [ ] Enable meeting attendance tracking (optional)
- [ ] (optional) Onboard into legend.finos.org/studio
Metadata update (Lead: FINOS Infra)
- [ ] Add project to metadata
- [ ] Add identities, orgs and affiliations to metadata
- [ ] Add logo to FINOS landscape
- [ ] Add maintainers emails to [email protected] list
- [ ] Add maintainers GitHub usernames to the project-maintainers Team
- [ ] Onboard project on LF systems (SFDC, Insights, EasyCLA, Groups.io)
Mailing list (optional)
- [ ] Create mailing-list
- [ ] Enable Hubspot Sync for all project mailing lists created
- [ ] Update marketing lists
- Add new list to the included "Email List" part of the filter
- Add new list to the excluded "Email" part of the filter
Announcement (Lead: FINOS Contrib POC)
- [ ] Work with FINOS marketing to send out announcement to [email protected] , checkout announcement template at the Contribution page.
- [ ] Notify FINOS Contrib POC and FINOS marketing manager once the announcement has been sent out (FINOS infra)
Marketing collateral and Social (Lead: FINOS Marketing)
- [ ] Update FINOS marketing collaterals to update numbers and include the new project
- [ ] Post on FINOS social media
- [ ] Post on LF social media
- [ ] Email brief announcement to [email protected] (Optional depending applicability of contribution)
Onboarding and training (Lead: FINOS Infra)
- [ ] FINOS Standards Project Governance
- [ ] FINOS Standards Project Lifecycle
Press Release (OPTIONAL - Lead: FINOS Marketing)
- [ ] Identify quotes for press release
- [ ] Draft press release
- [ ] Send embargoed press release to reporters
I met with @bansalr to discuss the contribution. Couple of items I asked for:
- Sync up with the HTC-Grid team and clarify how the projects would work together, updating the proposal with this. I've introduced @bansalr to the HTC-Grid contributors.
- Clarify the future roadmap to be clearer on what currently exists and what is still to be developed.
I also suggested meeting with other member firms to assess interest within the community.
@finos/toc @eddie-knight can we please clarify if this is a software or a standard project? If a standard project, per current contribution process, it should go to the Board for approval vs the TOC.
/cc @opoupeney @TheJuanAndOnly99 @maoo
Yes, @mindthegab that's correct.
@bansalr — If you'd like to convert this into a standards proposal, @TheJuanAndOnly99 has offered to assist.
@mindthegab @opoupeney this proposal has been converted to a standards proposal and is ready for the Board.
Thanks @TheJuanAndOnly99 - @opoupeney @eminty69 given this is been on the backlog for quite a bit, shall we try an email approval or otherwise the next board meeting is on May 12th? Adding @jgavronsky so we can act accordingly.
@bansalr any preference here? Generally in person gets more of a chance of engaging with stakeholders directly, but if time is of the essence here, we can produce some documentation and submit via email (would be a first).
@mindthegab - We presented at the ToC back in October and have since connected with quite a few ToC members - RedHat/IBM, Nvidia, Intel and AWS so email should be fine but I would prefer to defer to @eminty69.
@bansalr if you are able to I think there would be benefit to presenting it. Many of the TOC members have joined since the last time so it would raise visibility around the work
Note that this is no longer being proposed to the TOC, as it has been identified as a standards project rather than a code project.
@bansalr — Gab's question is regarding whether you would like the FINOS team to email the governing board requesting approval, or wait for the next opportunity to present this to the governing board directly to ensure there is enough engagement for an approval.
@eddie-knight you’re absolutely correct. Apologies for the confusion.
@eddie-knight the preference is to get this done sooner than later. I defer to your judgement - if you think presenting will give it a better shot at engagement then lets do that.
@jgavronsky could you give @bansalr guidance on next steps?
Per the Approval step, this proposal requires (optional) approval from the Governing Board. We will draft an email to give the GB visibility and a chance to ask questions. Based on responses, we will either approve via email or will bring for Board discussion at the upcoming GB Checkin meeting on May 12,2025.
@jgavronsky - thank you. The underlying implementation continues to move forward and we are eager to engage within finos to drive this. Since the ToC has reviewed it and we have discussed with most of the ToC members and addressed their concerns, please advise if we need an additional GB discussion and approval if it is optional.
@jgavronsky @TheJuanAndOnly99 — Can we / will we move forward with project setup logistics, with acknowledgement that GB input is pending? I'm aware that the openGRIS team is keen to have everything sorted as soon as possible.
Hi @bansalr our governance policy states that standards proposals require approval from the Governing Board. Considering the previous review by the TOC, we are asking the Board for a "silent consensus", without the need for additional presentations. Gab has reached out to the Governing Board with information on the proposal and a request for response (questions, objections) by May 2nd. If we don't get any questions or objections by May 2nd, we can consider the standard approved and can proceed with onboarding. If there are any questions/objections, we will aim for a discussion at the upcoming Board check-in on May 12th.
@eddie-knight fyi
Attaching deck presented at ToC and updated with roadmap and support and socialized to-date. [
OSPO Scalar Reference Proposal.pptx
](url)
Thanks @bansalr and the whole contributing team for your patience here. And @eminty69 and the whole @finos/toc for your support in this review process.
I am pleased to post the results of today's Governing Board Meeting, paired with the extensive discussions on the Governing Board mailing list (archived here, private to the Governing Board).
The contribution of the OpenGRIS open standard (and underlying open source software implementation, https://github.com/Citi/scaler) were approved by the Governing Board for inclusion in FINOS in Incubating stage with no objections and one abstention.
I am assigning the issue to @opoupeney which together with the infra team (@maoo and @TheJuanAndOnly99), project advocacy (@karlmoll) and marketing team (@winmorgan @niamhoparker @grizzwolf) will coordinate and inform next steps, including:
- Creation of appropriate infrastructure (assume separate projects for standard and software implementation, since the former should use CSL and the latter Apache).
- Legal and trademark checks / transfer
- Coordination of public marketing announcements and technical announcements on the FINOS mailing list (see example here
I recommend that once the initial calls are schedule an additional reach out is made to the Board and Members (they are included in the community@ alias) to stimulate participation.
Congratulations and thanks again for bringing this project to FINOS!
Below are the results of the code scanning.
License Scanning
- Software is released under pypi (we'll need to move it under finos)
- available on libraries.io, helps with dependency scanning:
- bidict - 0.23.1 - MPL-2.0
- cloudpickle - 3.1.1 - BSD-3-Clause
- psutil - 7.0.0 - BSD-3-Clause
- pycapnp - 2.0.0 - BSD-3-Clause
- pyzmq - 26.4.0 - BSD 3-Clause
- tblib - 3.1.0 - BSD-2-Clause
- numpy - 2.2.5 - BSD 3-Clause
- python-graphblas - 2025.2.0 - Apache-2.0
- donfig - 0.8.1 - MIT
- pyyaml - 6.0.2 - MIT
- uvloop - 0.21.0 - MIT
All of the above licenses are compatible with Apache-2.0
Dependency list
.venv/bin/safety uv pip list
annotated-types 0.7.0
anyio 4.9.0
authlib 1.5.2
certifi 2025.4.26
cffi 1.17.1
charset-normalizer 3.4.2
click 8.1.8
cryptography 44.0.3
dparse 0.6.4
filelock 3.16.1
h11 0.16.0
httpcore 1.0.9
httpx 0.28.1
idna 3.10
jinja2 3.1.6
joblib 1.5.0
markdown-it-py 3.0.0
markupsafe 3.0.2
marshmallow 4.0.0
mdurl 0.1.2
nltk 3.9.1
packaging 25.0
pip 24.3.1
psutil 6.1.1
pycparser 2.22
pydantic 2.9.2
pydantic-core 2.23.4
pygments 2.19.1
regex 2024.11.6
requests 2.32.3
rich 14.0.0
ruamel-yaml 0.18.10
safety 3.5.1
safety-schemas 0.0.14
setuptools 80.7.1
shellingham 1.5.4
sniffio 1.3.1
tenacity 9.1.2
tomlkit 0.13.2
tqdm 4.67.1
typer 0.15.4
typing-extensions 4.13.2
urllib3 2.4.0
Security Scanning
- CodeQL scanning enabled
.venv/bin/safety scan- 44 vulnerabilities found- fixes in
pyproject.tomlto get to 0 vulnerabilities:
s/psutil/psutil==7.0.0/g
s/pycapnp/pycapnp==2.0.0/g
s/numpy/numpy==2.2.5/g
s/nicegui[plotly]/nicegui[plotly]==2.14.0/g
Contributors
On https://github.com/Citi/scaler/graphs/contributors these are the contributors:
- https://github.com/sharpener6 (Citi)
- https://github.com/rafa-be (Citi)
- https://github.com/JamieSlome (Citi)
- https://github.com/magniloquency (Citi)
- https://github.com/gxuu
- https://github.com/1597463007
- https://github.com/MinchulShin254
GitHub users gxuu, 1597463007, MinchulShin254 are not identified as contributors.
Recap/Todos
- All licenses found in the released artifact are compatible with Apache-2.0 , but there is no automation for continuous checks; given the low number of dependencies, it's ok to keep manual checks [Good]
- Security scanning spotted 44 vulnerabilities, which should be addressed before moving forward with the contribution; it would also be advised to run safety on GitHub Actions, since these CVEs for some reason were not detected by existing scans. [To Fix]
- Apache-2.0 is used as repo license [Good]
- There are 3 unidentified contributors, which hopefully you can identify for us; if they are going to contribute in the future, they must be covered by FINOS CLA. [To Identify]
- All Citi maintainers are approved by EasyCLA criteria [Good]
CC @bansalr
Hi @bansalr any updates on the above?