-
Notifications
You must be signed in to change notification settings - Fork 167
Description
Group overview
Group convened to work on proposals to enable FDC3 use in a web browser, without the use of a browser extension.
The main proposal is now part of the current draft of FDC3 2.2 on the mina branch of the FDC3 repo and website (main/unreleased version), see:
- https://fdc3.finos.org/docs/next/api/ref/GetAgent
- https://fdc3.finos.org/docs/next/api/specs/browserDesktopAgents
Open Pull Requests:
- FDC3 For Web Browsers Implementation #1309
- Updating SessionStorage data format to additionally scope data #1442
- Match event listener names to event type names in fdc3 for web schemas #1459
- Allow apps to control FDC3 for Web JS console logging #1495
- Allow DAs to customize timeoutsand apps to control logging #1497
Relevant issue tags
Current open issues that relate to the above concepts with the label:

Meeting Date
Thursday 16th January 2025 - 11am (US eastern timezone EST) / 4pm (London, GMT)
Zoom info
- Join Zoom Meeting
- Meeting ID: 969 4029 4948
- Passcode: 636931
- Dial-in:
Country International Dial-in Toll-free Dial-in US +1 929 205 6099 (New York) 877 853 5247 UK +44 330 088 5830 0800 031 5717 France +33 1 8699 5831 0 800 940 415 Find your local number https://zoom.us/u/ad2WVnBzb8
Meeting notices
-
FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.
-
All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.
-
FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact legal@finos.org with any questions.
-
FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.
-
A Discussion Group has no direct decision-making power regarding the FDC3 standard - rather it is intended that anything they propose or work on will result in proposals (via Github issues and PRs) for the Standards Working Group participants to consider and vote on for inclusion in the standard.
Participation Requirements
Note: Meeting participants are expected to accept the terms of the FDC3 license (Community Specification License), understand the governance process and have a CLA in place.
Please click the following links at the start of the meeting if you have not done so previously.
- View the CSL
- View the GOVERNANCE of the Project
- Click here to start a PR.
- Edit the page to add your details.
- Hit the save button.
- Click "Create Pull Request".
- Click "Accept" on the EasyCLA dialog in the PR's discussion section.
- Click here to send email to become a voting participant on the FDC3 Project
Tracking Attendance
Note: Meeting participants are expected to add a comment to this GitHub issue in order that we can track attendance of FDC3 project meetings. Please do this at the start of the meeting.
Agenda
- Convene & roll call, review meeting notices (5mins)
- Review action items from previous meeting (5mins)
- Update on the current status of implementation
- Implementation PR open for review: FDC3 For Web Browsers Implementation #1309
- NPM alpha release: https://www.npmjs.com/package/@finos/fdc3/v/2.2.0-alpha.1
- Testing coverage
- Review and merge spec update PRs
- AOB & Adjourn
Minutes
- Update on the current status of implementation
- Nominally complete, with alpha release from PR branch on NPM for testing
- Not tagged as latest (as it is a pre-release) hence use semver string
"^2.2.2-alpha.3" - Can and should be tested in both FDC3 for Web scenarios and traditional container-injected implementations - should not cause any breaking changes.
- Not tagged as latest (as it is a pre-release) hence use semver string
- Code reviews by @julianna-ciq and @kriswest - now open for review by others, which would be much appreciated
- Readmes added to the main projects and the demo/reference implementation.
- Close to 500 tests implemented to ensure correct behaviour
- Reference implementation is passing all 2.0 conformance tests
- Next steps are to:
- Merge the additional PRs agreed (debug logs, cusotmizing timeouts, FDC3 workbench update)
- Collect reviews from maintainers, merge into main branch and perform beta release to NPM
- FDC3 Standards Working Group to vote to adopt 2.2.0 release and re-release to NPM as 2.2.0
- Timeline is dependent on the work of volunteers/maintainers - aim to do so as quickly as possible!
- @robmoffat is working on getting Sail working with the alpha release.
- interop.io and Morgan Stanley are also actively working on and testing implementations.
- Nominally complete, with alpha release from PR branch on NPM for testing
- Updating SessionStorage data format to additionally scope data #1442
- Re-reviewed changes in this PR
- Asked for and received consent from group to merge, pending editorial approval from @novavi (received during meeting).
- Match event listener names to event type names in fdc3 for web schemas #1459
- Briefly re-reviewed changes in this PR
- Asked for and received consent from group to merge, pending editorial approval from @novavi (received during meeting).
- Allow apps to control FDC3 for Web JS console logging #1495
- PR covers both additions to standard and implementation to support this
- Intended to help with debugging DA integrations with FDC3 for the Web
- A minor correction to docs example was made during the meeting
- Proposed and received consent for review by @robmoffat of implementation and @novavi for editorial before merging into the main PR
- FDC3 for Web Browsers Discussion group 16th January 2025 #1496
- PR still in draft while additional test cases are added, otherwise complete
- Extends default timeouts (necessary to comply with standard which requires DAs to allow at least 15seconds for apps to launch and add listeners, and applies no upper bound. Hence, timeout for API calls that launch apps (
open,raiseIntent,raiseIntentForContextextended to 100s by default, 10s for other API calls) - Custom timeout values can be set by DA by passing them in the WCP3Handshake message during the connection flow.
- These are then passed to handlers and listeners in fdc3-agent-proxy that implement the timeouts via the
waitandexchangefunctions
- These are then passed to handlers and listeners in fdc3-agent-proxy that implement the timeouts via the
- There remains the question of what to do when API calls timeout - FDC3 uses standardized errors but doesn't have ones appropriate for timeouts in all APIs (
OpenError.AppTimeoutandResolveError.IntentDeliveryFailedrelate to the app being started rather than communication with the Desktop Agent).- @kriswest proposed to create a new error (in all necessary error enumerations) to use on timeout and that this is needed in 2.2.0
- There is a similar issue No defined behaviour when incorrect arguments are passed to API calls #1490 relating to the passing of invalid arguments to an API call, which is also not covered and needs to be in future - however, this is not as urgent/needed as one for timeouts.
- This will need to be covered in the conformance tests - where a timeout error does not need to be (handled in the getAgent implementation and should be covered in its own tests)
- Consent was asked for and received for creating new timeout errors to use
- There is a similar issue No defined behaviour when incorrect arguments are passed to API calls #1490 relating to the passing of invalid arguments to an API call, which is also not covered and needs to be in future - however, this is not as urgent/needed as one for timeouts.
- @kriswest proposed to create a new error (in all necessary error enumerations) to use on timeout and that this is needed in 2.2.0
- Consent was asked for and received for merging the PR after proposed additions
Action Items
- Add Should the desktop agent support both unqualified appIds and fully qualified ones? #1475 to next SWG agenda
- @kriswest request maintainer/editor reviews of Allow apps to control FDC3 for Web JS console logging #1495 then merge
- @kriswest complete Fdc3 for web impl get agent refactor #1466 (including new errors) then request maintainer/editor reviews and merge
- ALL try out the NPM release in your apps and existing DAs - it should work well in container-based DAs as well as FDC3 for Web implementations, report back on any issues and successful tests.
Untracked attendees
| Full name | Affiliation | GitHub username |
|---|---|---|