Security Collab Space Meeting - August 18, 2025 ๐Ÿ”— **Source:** [Security Collab Space Meeting - August 18, 2025](https://www.youtube.com/watch?v=CAxNo5OsAHI) > [!note]+ Document Notes > tags: [security, agentic-ai, dependency-management, openjs-foundation, vulnerability-disclosure] > author: OpenJS Foundation Security Collab Space > source: YouTube > reference: https://www.youtube.com/watch?v=CAxNo5OsAHI > date created: 2024-12-19 14:30 > > # ๐Ÿท๏ธ Title: Security Collab Space Meeting - August 18, 2025 > <!-- deep-read:sections start --> ## ๐Ÿงฐ Action Inbox - [H1] Install FASA bot for dependency analysis โ€” GitHub admin required #security #dependencies - [H2] Create minimal VDP template โ€” Chris volunteering this week #vulnerability-disclosure - [H3] Schedule quarterly town halls starting September โ€” coordination with Kylie #community-outreach ## ๐Ÿงญ Table of Contents - [๐Ÿ“ Summary](#-summary) - [๐Ÿ“– Main Content](#-main-content) - [๐Ÿ—’๏ธ Notes](#๏ธ-notes) - [๐Ÿ“š References](#-references) - [๐Ÿ—ฃ๏ธ Paraphrase](#๏ธ-paraphrase) - [๐Ÿ“ฐ Newsletter](#-newsletter) - [โœ… Action Items](#-action-items) - [๐Ÿงช Hypotheses](#-hypotheses) - [๐Ÿ“Š Methodology](#-methodology) - [โ“ Questions](#-questions) - [๐Ÿ”ฎ Future Research](#-future-research) - [๐Ÿ’ก Implications](#-implications) - [๐Ÿง  Learning Styles Assessment](#-learning-styles-assessment) - [๐Ÿ“Š Accessibility Assessment](#-accessibility-assessment) - [๐ŸŒ DEIB Assessment](#-deib-assessment) - [โœ… Logical Validity](#-logical-validity) - [๐Ÿ›ก๏ธ DARVO Analysis](#-darvo-analysis) - [๐ŸŽฏ Conclusion](#-conclusion) ### ๐Ÿ”— References - [FASA Agentic Dependency Updater](URL) - [OpenJS Security Policies](URL) ## ๐Ÿ“ Summary - OpenJS Security Collab Space meeting featuring FASA demo of agentic dependency updater - Discussion of incident response planning and vulnerability disclosure policies - Community outreach initiatives including quarterly town halls and blog posts - Focus on improving project onboarding requirements and security policy templates - Collaboration opportunities with enterprise security tooling providers ## ๐Ÿ“– Main Content The meeting covered three main areas: a demonstration of FASA's agentic AI tool for dependency management, development of security incident response procedures, and improvements to project onboarding requirements. FASA's tool uses Anthropic's AI models with enterprise agreements to analyze dependency updates and provide automated fixes, moving beyond simple vulnerability identification to actual code changes. The security team is developing standardized incident response plans and minimal vulnerability disclosure policies to help projects manage security issues more effectively. There's ongoing work to improve community engagement through regular town halls and clearer communication channels. ## ๐Ÿ—’๏ธ Notes #### โฑ๏ธ [00:00](https://youtu.be/CAxNo5OsAHI?t=0) โ€” [H1] Meeting introduction and recording notice - Key idea: Weekly Security Collab Space meeting with special guest Rob from FASA - Evidence: "Morning folks. Welcome to the August 18th Security Collab Space weekly meeting" #### โฑ๏ธ [02:30](https://youtu.be/CAxNo5OsAHI?t=150) โ€” [H2] FASA background and acquisition announcement - Key idea: FASA acquired Edgebit for dependency-specific static analysis technology - Evidence: "I actually joined FASA as part of an acquisition of my company that was called Edgebit" #### โฑ๏ธ [05:15](https://youtu.be/CAxNo5OsAHI?t=315) โ€” [H1] Agentic dependency updater demonstration begins - Key idea: AI tool outperforming human engineers at dependency updates - Evidence: "It pretty rapidly started doing a better job than our human engineers" #### โฑ๏ธ [08:45](https://youtu.be/CAxNo5OsAHI?t=525) โ€” [H2] JavaScript/TypeScript focus with expansion plans - Key idea: Currently limited to JS/TS but expanding to Java and Python - Evidence: "This is JavaScript and TypeScript specific right now which is why this audience is a really great fit" #### โฑ๏ธ [12:20](https://youtu.be/CAxNo5OsAHI?t=740) โ€” [H3] Three categories of dependency analysis - Key idea: Tool handles minor patches, safe breaking changes, and actual breaking changes - Evidence: "We handle these really minor patch bumps. We find safe breaking changes and then we can fix breaking changes" #### โฑ๏ธ [15:30](https://youtu.be/CAxNo5OsAHI?t=930) โ€” [H2] Prettier example - simple upgrade - Key idea: Automated analysis shows no breaking changes for dev dependency upgrade - Evidence: "Not much to see here. There's no breaking changes. This is all good. You should merge this" #### โฑ๏ธ [18:10](https://youtu.be/CAxNo5OsAHI?t=1090) โ€” [H2] Mock upgrade with Node.js compatibility check - Key idea: Tool validates Node.js version compatibility for major releases - Evidence: "This is mostly related to dropping support for NodeJS below 18" #### โฑ๏ธ [22:45](https://youtu.be/CAxNo5OsAHI?t=1365) โ€” [H2] Amazon SDK complex migration example - Key idea: Tool identifies and fixes specific breaking changes affecting codebase - Evidence: "We use Minio to mock out S3 and some of this checksumming that they changed is actually going to break our development flow" #### โฑ๏ธ [26:30](https://youtu.be/CAxNo5OsAHI?t=1590) โ€” [H3] Anthropic enterprise agreement for analysis - Key idea: Uses Anthropic models with no training on customer data - Evidence: "We use Anthropic and have an enterprise agreement with them. So there's no training on the data" #### โฑ๏ธ [30:15](https://youtu.be/CAxNo5OsAHI?t=1815) โ€” [H2] GitHub integration and workflow - Key idea: Simple GitHub bot installation with existing workflow integration - Evidence: "Just logging into there. It's going to bump you over to GitHub to install it and then you can configure which repos" #### โฑ๏ธ [35:20](https://youtu.be/CAxNo5OsAHI?t=2120) โ€” [H1] Incident response plan discussion begins - Key idea: Ulyses presents draft incident response plan for foundation support - Evidence: "I created a small PR which is the 289. It's not officially ready to review. It's more like a first iteration" #### โฑ๏ธ [38:45](https://youtu.be/CAxNo5OsAHI?t=2325) โ€” [H2] Incident categories and scope definition - Key idea: Focus on platform changes, account access issues, supply chain attacks, not CVEs - Evidence: "Anything related to vulnerabilities in the level of CVEs should be done on the project or worst case scenarios will be escalated to the CNA" #### โฑ๏ธ [42:10](https://youtu.be/CAxNo5OsAHI?t=2530) โ€” [H3] Minimal VDP template assignment - Key idea: Chris volunteers to create minimal vulnerability disclosure policy template - Evidence: "I can take a stab at this one. Really you want something that covers how do people submit vulnerabilities" #### โฑ๏ธ [45:30](https://youtu.be/CAxNo5OsAHI?t=2730) โ€” [H2] Community outreach and blog post planning - Key idea: Need better communication about available security support resources - Evidence: "We meet every week and oftentimes we're talking about how difficult it is or how we don't hear from projects" #### โฑ๏ธ [48:15](https://youtu.be/CAxNo5OsAHI?t=2895) โ€” [H1] Quarterly town hall proposal - Key idea: Regular quarterly meetings to update projects and gather feedback - Evidence: "We could think about doing a quarterly town hall. So something a little bit more regular" ## ๐Ÿ“š References - [FASA Enterprise Solutions](https://fossa.com/) - [OpenJS Foundation Security Policies](https://openjs.org/security/) - [GitHub Security Advisory Process](https://docs.github.com/en/code-security/security-advisories) ## ๐Ÿ—ฃ๏ธ Paraphrase - FASA demonstrated an AI-powered tool that automatically analyzes and fixes dependency updates, going beyond vulnerability identification to provide actual code changes and migration assistance - The Security Collab Space is developing standardized incident response procedures to help projects get foundation support for security issues outside of traditional CVE processes - Community engagement efforts focus on quarterly town halls, improved documentation, and clearer communication channels to connect projects with available security resources ## ๐Ÿ“ฐ Newsletter The OpenJS Security Collab Space is making significant strides in automated security tooling and community support. FASA's new agentic dependency updater represents a breakthrough in moving from vulnerability identification to actual remediation, using enterprise-grade AI to analyze complex dependency upgrades and provide working code fixes. This is particularly valuable for JavaScript and TypeScript projects dealing with the constant churn of dependency updates. The team is also strengthening incident response capabilities with new standardized procedures and minimal vulnerability disclosure templates, making it easier for projects to handle security issues effectively. Regular quarterly town halls will improve communication between the foundation and projects, ensuring security resources reach those who need them most. Resources: [OpenJS Security](https://openjs.org/security/), [Security Collab Space](https://github.com/openjs-foundation/security-collab-space), [Vulnerability Disclosure](https://github.com/openjs-foundation/cross-project-council/blob/main/PROJECT_PROGRESSION.md#security-policy) ## โœ… Action Items #### DevRel - Developer advocacy: Present FASA tool benefits at JSConf and other events - Education: Create workshop content on dependency security best practices - Developer experience: Improve onboarding documentation for security tools - Community management: Facilitate quarterly town halls and feedback sessions #### OSPO - Policy & Governance: Review and update project onboarding security requirements - License Compliance: Integrate dependency license scanning into onboarding process - Security Management: Implement incident response procedures and minimal VDP templates - Software Inventory: Track security tool adoption across foundation projects - Developer Support: Provide guidance on vulnerability disclosure and CVE processes - Community Engagement: Coordinate with FASA and other vendors for foundation benefits - Strategic Alignment: Measure security posture improvements across projects #### Community - Maintainers: Provide clear escalation paths for security incidents beyond CVEs - Contributors: Train on security best practices during onboarding - Sponsors: Demonstrate security value through dependency management improvements - Ecosystem: Coordinate cross-project security initiatives and shared tooling #### WordPress - Core: Evaluate applicability of agentic dependency management for WordPress ecosystem - Security: Adapt incident response procedures for WordPress-specific platform issues - Community: Share learnings from OpenJS security initiatives with WordPress security team - Documentation: Create WordPress-specific security policy templates based on minimal VDP work ## ๐Ÿงช Hypotheses - Agentic AI tools can reduce dependency update backlog by 60% through automated analysis and code fixes - Standardized incident response procedures will reduce average resolution time for non-CVE security issues - Quarterly town halls will increase project participation in security initiatives by 40% - Minimal VDP templates will improve vulnerability reporting quality and response times ### ๐Ÿ“Š Methodology - Study design: Track dependency update metrics before and after FASA tool deployment - Data sources: GitHub PR analysis, maintainer time surveys, security incident logs - Experiments: A/B test different communication approaches for security resource adoption ### โ“ Questions - How can agentic dependency management be adapted for non-JavaScript ecosystems like WordPress? - What metrics best measure the effectiveness of foundation security support services? - How do we balance automation with human oversight in security-critical dependency updates? ### ๐Ÿ”ฎ Future Research - Integration patterns for AI-powered security tools in open source workflows - Effectiveness of different vulnerability disclosure policy approaches - Community engagement strategies for security initiatives across diverse project types ### ๐Ÿ’ก Implications - Practice: Projects can automate routine dependency maintenance while focusing on feature development - Policy: Foundation onboarding requirements may need updates to reflect new security tooling capabilities - Security: Reduced dependency lag times improve overall ecosystem security posture - Education: Need for training maintainers on AI-assisted security workflows - Funding: Budget considerations for enterprise security tooling partnerships ### ๐Ÿง  Learning Styles Assessment Reading level estimate: Grade 12-14 (technical content with specialized terminology) #### ๐Ÿ‘€ Visual learners - Present: GitHub PR screenshots, mermaid diagrams for incident response flow - Improve: Architecture diagrams showing tool integration, security workflow visualizations #### ๐Ÿ”Š Aural learners - Present: Live demo format with verbal explanations - Improve: Audio summary of key takeaways, recorded walkthrough guides #### ๐Ÿ—ฃ๏ธ Verbal learners - Present: Clear definitions of agentic AI, dependency management concepts - Improve: Glossary of security terms, analogy-based explanations #### ๐Ÿงฉ Kinesthetic learners - Present: Interactive GitHub bot installation process - Improve: Hands-on labs for incident response procedures, security policy templates #### ๐Ÿง  Logical learners - Present: Step-by-step incident response flowchart, categorized analysis types - Improve: Decision trees for security tool selection, KPI dashboards #### ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ Social learners - Present: Collaborative meeting format, community discussion - Improve: Peer review processes for security policies, mentorship programs #### ๐Ÿง˜โ€โ™€๏ธ Solitary learners - Present: Self-service bot installation, async PR review - Improve: Self-assessment checklists, independent learning paths #### ๐ŸŒฟ Naturalistic learners - Present: Ecosystem thinking about dependency relationships - Improve: Supply chain analogies, sustainability considerations ### ๐Ÿ“Š Accessibility Assessment #### Screen reader semantics - Present: Clear heading structure in meeting notes - Improve: Alt text for GitHub screenshots, ARIA labels for interactive demos #### Keyboard navigation - Present: GitHub interface keyboard accessibility - Improve: Tab order documentation for security workflows #### Contrast and readability - Present: Standard meeting format with clear speaker identification - Improve: High contrast mode considerations for security dashboards #### Media and captions - Present: Meeting recording with transcript - Improve: Live captions during demos, downloadable transcripts ### ๐ŸŒ DEIB Assessment #### Cultural breadth - Present: Global open source project perspective - Improve: Multi-timezone meeting options, regional security considerations #### Inclusive language - Present: Technical terms clearly defined - Improve: Plain language summaries, avoid security jargon #### Representation - Present: Diverse technical perspectives from different projects - Improve: Include perspectives from underrepresented communities in security #### Psychological safety - Present: Collaborative problem-solving approach - Improve: Clear escalation paths, supportive community guidelines ### โœ… Logical Validity #### Strong reasoning - Deductive strength: FASA tool outperforms humans โ†’ dependency backlog reduction (strong with evidence) - Inductive strength: Pattern recognition from enterprise use cases โ†’ open source applicability (moderate) - Causal reasoning: Better communication โ†’ increased security resource adoption (logical but needs validation) #### Fallacies - Appeal to novelty: "New AI tool is better" - needs empirical validation - Hasty generalization: Enterprise success โ†’ open source success assumption #### Tone of voice - Overall tone: Collaborative and solution-focused, appropriate technical depth for audience ### ๐Ÿ›ก๏ธ DARVO Analysis - Deny: No significant denial patterns observed - Attack: No attacks on accusers present - Reverse victim/offender: Not applicable to this technical discussion - Emotional cues and rhetoric: Professional, collaborative tone throughout ## ๐ŸŽฏ Conclusion The OpenJS Security Collab Space is advancing on multiple fronts: automated dependency management through AI partnerships, standardized incident response procedures, and improved community engagement strategies. The FASA collaboration represents a significant step toward practical security automation that addresses real maintainer pain points. Success will depend on effective integration with existing workflows and continued community feedback to refine these approaches for open source contexts. ## ๐Ÿงฑ Refactor Appendix ### ๐Ÿ“š Literature Split Pad Purpose: Stage CEE units that become Literature notes. Split level: H3 ### [H1] Agentic AI outperforms humans at dependency updates > [!quote] [Security Collab Space Meeting](https://www.youtube.com/watch?v=CAxNo5OsAHI) by --- ## Full Transcript [00:11] Hey, Rob.<br>[00:14] >> Hello there. How you doing?<br>[00:16] >> Good. How are you?<br>[00:18] >> Not too bad. Happy Monday.<br>[00:20] >> Yeah.<br>[00:27] Let's see here.<br>[00:29] Just be aware we're we're recording this<br>[00:31] one.<br>[00:31] >> Yeah.<br>[00:32] >> Yeah. Uh we can Are are you okay having<br>[00:35] your presentation uh recorded? Is that<br>[00:38] >> Yeah, that's fine. Yeah.<br>[00:39] >> Oh, perfect. Okay.<br>[00:44] >> Hey, Robin.<br>[00:45] >> Hey there.<br>[00:51] >> Are you looking to stop the recording,<br>[00:54] Ben?<br>[00:55] >> Yeah.<br>[00:58] Morning folks. Welcome to the August<br>[01:00] 18th Security Collab Space weekly<br>[01:02] meeting. Uh today we've got special<br>[01:04] guest Rob who's going to give us a demo.<br>[01:08] So Rob, I will hand it to you.<br>[01:11] >> All right. Um a little preamble first<br>[01:12] before we get to the demo. Um, FASA has<br>[01:16] been working on, you know, we're big in<br>[01:19] um, both the sea space and license<br>[01:21] compliance space um, and have provided<br>[01:24] um, mostly license compliance um,<br>[01:27] services or subscriptions um, to OpenJS<br>[01:30] and a number of other open source<br>[01:31] projects. Um, and so wanted to come here<br>[01:34] today to talk about something new that<br>[01:35] we're working on, which is all right,<br>[01:37] it's great that you can like, you know,<br>[01:38] identify um, vulnerabilities, for<br>[01:40] example, in like the SCA space, but how<br>[01:42] can you actually help me fix them? Um,<br>[01:44] we've been working on an agentic<br>[01:46] dependency updater to actually solve<br>[01:48] that problem. Um, and so, uh, wanted to<br>[01:51] tell you a little bit more about that.<br>[01:52] Um, how we got here, and then I'll show<br>[01:54] you a demo. And what we would like to do<br>[01:56] is um we've been talking with a number<br>[01:58] of enterprises about you know this use<br>[02:00] case inside um but also wanted to engage<br>[02:03] more open source stuff both give back<br>[02:04] and help folks merge uh dependencies<br>[02:07] faster um get you some maintainer time<br>[02:09] back I know that's you there's always a<br>[02:10] time crunch there um but then we would<br>[02:12] love to learn about like kind of oss<br>[02:14] specific use cases in this um I think we<br>[02:16] have a pretty good handle on the<br>[02:17] enterprise side um so a little bit of<br>[02:19] give and take I think it's a pretty<br>[02:20] symbiotic um relationship<br>[02:24] um so I'll give you a a little bit of<br>[02:25] background on how we got here. Um so, uh<br>[02:28] FASA wanted to just address this topic<br>[02:31] internally. Um we have our own software<br>[02:33] just like anybody else. We spend a lot<br>[02:34] of time on dependency updates. We have a<br>[02:36] lot of knowledge about um dependency<br>[02:38] graphs and uh direct and transitives and<br>[02:40] all the stuff that comes along with<br>[02:42] that. Um so we thought we were well set<br>[02:43] up to do this and so we started building<br>[02:45] out this agentic framework. Um it pretty<br>[02:48] rapidly started doing a better job than<br>[02:50] our human engineers. Um and so we said,<br>[02:52] you know, there's actually something<br>[02:53] here. Um and so um then FASA kind of<br>[02:56] turned and got real serious about this<br>[02:58] and you know we wanted to start<br>[02:59] developing it into a product. Um I<br>[03:01] actually joined FAA um as part of an<br>[03:04] acquisition of my company that was uh<br>[03:06] called Edgebit that was working on some<br>[03:07] dependency specific static analysis<br>[03:10] tech. Um and so um that hasn't been<br>[03:13] announced yet but it's fine for this<br>[03:14] recording. Um and so um that was kind of<br>[03:17] proof point one of philos. Number two<br>[03:19] was building out a really big ground<br>[03:21] truth data set um to evaluate ourselves<br>[03:24] against. Um and so we kind of used the<br>[03:28] um static analysis as like a grounding<br>[03:30] point for facts about code bases so that<br>[03:32] the you know the AI is not hallucinating<br>[03:34] all this stuff. Um and we use our<br>[03:36] agentic thing for its kind of um its<br>[03:39] detail oriented uh nature and it's<br>[03:41] really good at researching things. Um<br>[03:43] but we kind of ground it in the ground<br>[03:45] truth and the static analysis results.<br>[03:47] Um so anyways building out that set and<br>[03:49] we want to keep doing that as well. And<br>[03:50] so um as open source projects do major<br>[03:54] uh migrations between things and write<br>[03:56] up migration guides and document<br>[03:58] breaking changes we would love to keep<br>[03:59] adding that to our data sources. Um I<br>[04:02] will admit this is JavaScript and<br>[04:04] Typescript specific right now which is<br>[04:05] why this audience is a really great fit<br>[04:07] for this. We'll expand to Java and<br>[04:09] Python and other stuff over time. Um,<br>[04:11] it's that ground truth data set that<br>[04:12] takes a long time to actually build up.<br>[04:14] Um, and we have that for JavaScript,<br>[04:16] TypeScript. Um, so I'll pause there<br>[04:18] really quick. Does the the premise make<br>[04:20] sense why we're here? And, uh, kind of<br>[04:23] the background,<br>[04:27] head nods. Sounds good.<br>[04:28] >> Yeah. Chris Chris just joined. Chris, uh<br>[04:32] just um a quick summary, we have Rob<br>[04:34] from FASA here who's demoing a new<br>[04:37] product in development<br>[04:39] uh using Agentic AI.<br>[04:42] >> Yeah, this is an AgentIC um dependency<br>[04:44] updater. Um so we want to, you know,<br>[04:46] take either SCA scan results or license<br>[04:49] issues or anything that you have in your<br>[04:50] codebase and actually help you with<br>[04:52] completed work items. I would say maybe<br>[04:54] the an interesting thing for this<br>[04:56] audience is we've kind of found that<br>[04:57] these actually devolve into pretty<br>[04:59] complex engineering tasks basically like<br>[05:02] the first minute you encounter one of<br>[05:03] these upgrades. Um unless it's like a<br>[05:05] very minor um you know bump to a patch<br>[05:08] release or whatever. There's always you<br>[05:09] know uh call site adaptation or a lot of<br>[05:12] research that needs to be done and you<br>[05:13] just basically backlog this stuff<br>[05:15] forever because it's just too much work<br>[05:17] to even do all that work. Um so you<br>[05:19] don't even know what you don't know and<br>[05:20] so you just backlog it. So we want to<br>[05:22] fix that.<br>[05:22] >> Yeah. And you're starting with<br>[05:24] JavaScript, TypeScript, moving to other<br>[05:26] languages later. You've um already<br>[05:28] offered it to a few of our projects as<br>[05:30] well. Um<br>[05:32] >> correct.<br>[05:32] >> Which I've sent some emails out last<br>[05:34] week.<br>[05:35] >> Yes. Um and so the other uh thing to<br>[05:37] know about where we're getting started<br>[05:39] is um we are right now um because of our<br>[05:42] kind of the enterprises have done a lot<br>[05:44] of um uh effort and setting up<br>[05:47] dependabot renovate sneak all these uh<br>[05:49] updators. We're actually piggybacking on<br>[05:51] those PRs right now. We'll move on to<br>[05:53] making our own PRs and and based on our<br>[05:56] better analysis, but um so um I<br>[05:59] identified Appium, Webpack, jQuery as<br>[06:02] folks that are already using these<br>[06:03] updators today, but if there's more,<br>[06:05] we're glad to get everybody involved. Um<br>[06:07] and for folks that don't have those<br>[06:09] tools set up, um you know, we'll be able<br>[06:10] to um address those needs as well. Um so<br>[06:13] I want to show you just three kind of<br>[06:15] interesting um categories of analysis<br>[06:17] that we can do. Um this is a prettier,<br>[06:20] you know, it's a dev dependency of<br>[06:22] course. Um and not a crazy bump here<br>[06:25] from 41 to 42. Um we saw this um PR get<br>[06:29] posted. We did some automatic analysis<br>[06:30] and said, "Hey, not much to see here.<br>[06:32] There's no breaking changes. Um this is<br>[06:34] all good. You should merge this." Um so<br>[06:36] I'm sure we're all familiar with this.<br>[06:38] These are just the waste of time bumps.<br>[06:41] Um something that's a little bit more<br>[06:42] interesting. Um this is a knock upgrade<br>[06:44] from 13 to 14. So um depending on how<br>[06:48] they do semantic versioning pretty major<br>[06:49] release um depend about here<br>[06:52] compatibility unknown not very helpful<br>[06:54] um so I don't know what to do here um<br>[06:56] but uh foss does um so we spent you know<br>[07:00] 37 minutes thinking about this most<br>[07:02] that's doing some of the static analysis<br>[07:04] and and doing research um this is mostly<br>[07:07] related to uh dropping support for um<br>[07:10] NodeJS below 18 um so we went through<br>[07:12] and you know made sure on that safe<br>[07:15] breaking change Here we, you know, we<br>[07:16] always want to show our homework for<br>[07:18] like what we actually did. This is how<br>[07:19] we validated that we're not using those<br>[07:21] deprecated versions of Node.js and<br>[07:23] you've got references to the the code<br>[07:25] and things like that. Um, and so again,<br>[07:29] this is safe to upgrade. You should go<br>[07:31] upgrade this.<br>[07:33] Um, something that's a little more<br>[07:34] exciting, um, this is a a grouped um,<br>[07:36] update of a bunch of Amazon SDKs. Um so<br>[07:39] you know versions to versions um but has<br>[07:43] uh things to do with um this S3 um<br>[07:45] client and this one we actually said hey<br>[07:48] there's actually some significant<br>[07:50] behavioral changes here that are going<br>[07:51] to affect the way that you use this<br>[07:53] dependency not the way everybody uses<br>[07:55] this but this is specific to the<br>[07:56] codebase we're looking at. Um we use<br>[07:58] Minio to uh mock out S3 and for some<br>[08:01] development use cases and some of this<br>[08:04] um check summing that they changed is<br>[08:05] actually going to break our development<br>[08:06] flow. Um and so Fosabot um understood<br>[08:10] that and then said, "Hey, we actually<br>[08:12] need to come up with a migration plan<br>[08:13] here." And what it did is actually go<br>[08:16] and turn off that new checkum<br>[08:17] calculation so that we didn't break our<br>[08:19] dev flow. So it made some commits here<br>[08:22] um that you know end up as part of this<br>[08:23] pull request and then you can you know<br>[08:25] go review and change that. Um again with<br>[08:28] all of the um the homework here for you<br>[08:30] know our eight um fixed breaking<br>[08:32] changes. This is the ones that we<br>[08:33] addressed with these commits. Um, and<br>[08:34] then there were eight others that were<br>[08:36] just safe that we, you know, don't need<br>[08:38] to care about. Um, so that's like kind<br>[08:40] of the broad strokes of like we handle<br>[08:42] these really minor patch bumps. We find<br>[08:44] safe breaking changes and then we can<br>[08:46] fix breaking changes. Um, fourth thing<br>[08:49] will be, hey, an engineer needs to also<br>[08:51] look at this. Um, you know, there's<br>[08:53] something about stylistically that how<br>[08:55] do you want to handle this? Um, and<br>[08:57] we'll get better and better at those<br>[08:58] over time.<br>[09:00] Um, so was there any questions on any of<br>[09:02] these um, PRs? Does it seem like it<br>[09:04] would be useful um to the maintainers on<br>[09:06] all these projects? And um you know, our<br>[09:09] ideal case would be that you're just<br>[09:11] continually merging stuff so that you're<br>[09:13] never falling behind on dependencies. Um<br>[09:15] so it keeps the security posture um just<br>[09:18] that much more fresh and uh close to the<br>[09:20] tip. Um so that you don't have to<br>[09:22] scramble when these big uh issues come<br>[09:24] up. So but I'll pause there. um<br>[09:27] questions.<br>[09:37] >> I'm curious what are you doing the<br>[09:39] analysis with? Like are is it<br>[09:42] >> are you using chat GPT on the back end?<br>[09:44] Are you using anropic where<br>[09:47] >> where are you pulling the stuff from?<br>[09:49] >> Um so we use anthropic um and uh have an<br>[09:53] enterprise agreement with them. So<br>[09:54] there's no uh training on the data. Um,<br>[09:57] and so, um, yeah, so we do our static<br>[10:00] analysis, crunch some things, see what<br>[10:02] the call sites we care about, and then<br>[10:03] we're sending over, you know, snippets<br>[10:05] of code, not like the entire codebase<br>[10:07] obviously, um, over to, um, Anthropic<br>[10:09] right now. And we use a variety of<br>[10:12] models for, you know, depending on, um,<br>[10:14] which step we're in, which is, uh, best<br>[10:16] suited for it.<br>[10:20] And ideally, how do you see yourself<br>[10:22] working best with the like the technical<br>[10:25] steering committees of these projects?<br>[10:28] >> Um, I think we so we would love to like<br>[10:30] help speed up maintainers merging<br>[10:32] dependency updates to keep those<br>[10:33] projects more secure to keep their<br>[10:35] dependency trees fresh, pruned, you<br>[10:37] know, um, as streamlined as they can be.<br>[10:39] Um and so I think what that looks like<br>[10:41] in the immediate term is just um getting<br>[10:44] uh connected to the org and the GitHub<br>[10:46] or and then turning on auto analyze so<br>[10:48] that they just get these analyses<br>[10:50] directly on dependabot PRs hopefully<br>[10:53] help people merge those faster um and<br>[10:55] then over time as we get more<br>[10:56] sophisticated um engaging with those<br>[10:58] more sophisticated updates where we<br>[10:59] would you know potentially roll up a<br>[11:01] bunch of dependency updates that are all<br>[11:03] not breaking into one PR and you know<br>[11:05] kind of things like that.<br>[11:11] Um but yeah, we're pretty excited about<br>[11:12] it. Like we said, um it's been kind of<br>[11:15] outpacing our um human engineers and<br>[11:18] we've previously had things that were on<br>[11:20] the backlog, these major migrations that<br>[11:22] we actually found out look really major,<br>[11:24] but you know, we're touching near a<br>[11:26] bunch of deprecated APIs and all these<br>[11:27] things, but then the bot says, "Hey,<br>[11:29] you're actually using these in forward<br>[11:30] compatible ways. There's nothing to<br>[11:32] worry about here." And so we pulled<br>[11:33] things off the backlog and merged it<br>[11:34] whereas before it would just gone to the<br>[11:36] black hole and never got in touch ever<br>[11:38] again. So I'm sure um these projects<br>[11:41] have those as well and we'd love to help<br>[11:42] out with that.<br>[11:47] >> Um yeah, and so all this is is is live<br>[11:49] and ready to go. Um and so it's just uh<br>[11:52] whoever's a GitHub admin needs to<br>[11:54] install the app and then uh we're off<br>[11:55] for the races.<br>[12:00] any other um like for folks that are<br>[12:03] looking to um to try this out, is there<br>[12:06] anything else in addition to that that<br>[12:07] they need to do or anyone they need to<br>[12:09] reach out to or they just really need to<br>[12:10] install the bot<br>[12:11] >> and that's it?<br>[12:12] >> Yep. Um our web app kind of walks you<br>[12:14] through installing the the bot. So it's<br>[12:16] just logging into there. It's going to<br>[12:18] bump you over to GitHub to install it<br>[12:19] and then you know you can configure<br>[12:21] which repos you want the auto analyze<br>[12:23] on. Um, we can also test it out um, just<br>[12:25] by you can comment at the bot and get<br>[12:27] analysis kind of whenever as well.<br>[12:30] >> Yeah, it's pretty simple designed to be<br>[12:32] um, you know, other than the person that<br>[12:33] sets it up, everybody can just interact<br>[12:35] with it through GitHub. Um, there's no,<br>[12:37] you know, meet you where you are and the<br>[12:39] way that the the workflow is already set<br>[12:41] up and you know all the um, if you need<br>[12:45] to have x number of people um, approve<br>[12:47] stuff before merging and all that stuff<br>[12:48] at all, none of that needs to change.<br>[12:50] So I did send intros to the maintainers<br>[12:53] introducing Rob and Kevin from FASA to<br>[12:56] Webpack, Appium and ESLint<br>[12:59] uh core maintainers. So I guess if<br>[13:01] there's anyone else but you did if you<br>[13:03] join our Slack sometimes that's the<br>[13:06] faster way to probably connect with<br>[13:08] people.<br>[13:08] >> Okay. I did join the Slack. I haven't<br>[13:10] joined any or investigated what channels<br>[13:12] to best join. But I guess maybe my<br>[13:13] question for y'all is how do you<br>[13:15] interact with those technical<br>[13:17] committees? How does this group<br>[13:20] you sort of sometimes meet them where<br>[13:22] they are. That's something we're always<br>[13:24] trying to do better. We sort of do a<br>[13:25] combination<br>[13:27] >> um Slack seems to be more efficient than<br>[13:29] email. Um opening issues sometimes. Um<br>[13:33] but yeah, just knowing that they're uh<br>[13:36] that you've sort of gone and spoken to<br>[13:38] this group is pretty helpful. Uh Rafa<br>[13:41] and Ulysus are um part of our Alpha<br>[13:44] Omega project and they're trying to help<br>[13:46] uh the other projects as well. Uh so<br>[13:49] this is good for them to know.<br>[13:52] >> Cool. Yeah. Well, we're happy to kind of<br>[13:54] um make it happen however folks want to<br>[13:57] uh be engaged with. Um and yeah, just<br>[14:00] with the ultimate goal of saving folks<br>[14:02] time so they can work on more important<br>[14:04] stuff.<br>[14:06] >> Cool.<br>[14:09] Um have there been any other kind of<br>[14:11] security related projects that y'all<br>[14:12] have driven through um in the past like<br>[14:14] six months like in the beginning of this<br>[14:15] year? Anything? I'm just curious to get<br>[14:18] a sense of um surface area and stuff<br>[14:22] like that.<br>[14:24] >> Um what do you mean by security project?<br>[14:26] >> Well, this is just like the the group<br>[14:28] that's interested in security just like<br>[14:30] how have you helped push these um these?<br>[14:33] >> We did launch recently launched a CNA.<br>[14:35] So that's something that's being pushed<br>[14:36] out. We have some security compliance<br>[14:38] guidelines that we're pushing out. Um<br>[14:42] those are the things that are sort of<br>[14:44] originating here and then going into the<br>[14:46] projects. We also launched a security<br>[14:48] training uh that for us and the socket<br>[14:51] our socket friends uh produced for us.<br>[14:53] But uh<br>[14:54] >> those are kind of the big ones.<br>[14:57] >> So it sounds like each group kind of<br>[14:58] gets to do their own thing. You have<br>[15:00] some guidelines but they're not like you<br>[15:02] know prescriptive or in in the way that<br>[15:04] they're mandatory<br>[15:05] >> sort of. So I there's there's a caveat<br>[15:08] there which is um this group works with<br>[15:11] the um the CPC the cross project council<br>[15:15] which is the equivalent of the open js<br>[15:18] tac right so it's made up of um various<br>[15:22] stakeholders from various projects and<br>[15:24] that project does maintain some<br>[15:27] mandatory guidelines um the most<br>[15:30] important is when joining the foundation<br>[15:32] so when when projects join the<br>[15:34] foundation there's a list of things that<br>[15:35] they have to do, right? They have to<br>[15:37] have specific licenses. They have to<br>[15:39] have um code of conduct and there are<br>[15:42] some security things in there and I<br>[15:44] think one output from this group in the<br>[15:47] not too distant future will be u making<br>[15:49] updates to those uh guidelines.<br>[15:52] >> Um so that's another area of influence<br>[15:55] um over the projects.<br>[15:57] >> Cool. Makes sense.<br>[16:00] Any<br>[16:03] other comments, feedback for Rob?<br>[16:08] >> Anything as you list also is on express<br>[16:10] and rafa on node.<br>[16:14] Any project feedback on that? Yeah, I<br>[16:17] think I think it's a it's a useful tool<br>[16:20] uh because yeah, as you said before like<br>[16:21] depend about half of the time is like<br>[16:24] even for trivial changes you need to go<br>[16:26] to the change log and go by detail even<br>[16:28] if the CI is passing it's like maybe<br>[16:30] there is something that can break people<br>[16:32] later on. Um so yeah I think it's going<br>[16:34] to save uh some time uh yeah depending<br>[16:37] on the perspective I think there's also<br>[16:38] an open discussion going on on uh<br>[16:41] artificial intelligence um comments<br>[16:43] generated stuff on PRs and things like<br>[16:45] that like in terms of of how we should<br>[16:47] interact with this tooling there's going<br>[16:48] to be like a new collab space dedicated<br>[16:51] to that um that being said because last<br>[16:53] week we had the demo in the in the<br>[16:55] express uh TC uh working session uh<br>[16:58] regarding code rabbit and it was a<br>[17:00] interesting demo but also we have a lot<br>[17:02] of uh discuss discussing around if if<br>[17:04] these kind of comments are okay or not<br>[17:05] dependent on the on the community that<br>[17:07] are participating and the target and so<br>[17:09] on. So in terms of maintainer as tool<br>[17:11] for maintainer I think it's useful<br>[17:12] because can save you time. I think it's<br>[17:15] not 100% like replacement for the human<br>[17:17] validation. There's going to be some<br>[17:18] validation but I think the information<br>[17:20] there is useful to validate your own you<br>[17:22] know understanding of the tooling and<br>[17:24] stuff especially for the typical dev<br>[17:26] dependencies that you are not 100% align<br>[17:29] of what's going on. For example, my case<br>[17:30] with prettier when we use it, it's like<br>[17:33] h yeah most of the time and I like the<br>[17:35] changes and I go ahead, right? But with<br>[17:37] this uh we might go with a deeper<br>[17:39] detail, right? Um so yeah, I think it's<br>[17:41] a good approach and has a good potential<br>[17:43] for saving time.<br>[17:45] >> Awesome.<br>[17:47] Yeah, I would like to see this in action<br>[17:50] on express and fast 5 first before uh<br>[17:54] checking it on Node.js because uh the<br>[17:56] dependencies uh the way we handle<br>[17:57] dependenc on OJS is like different as<br>[18:00] they are not uh simple uh JavaScript<br>[18:04] uh projects but you know uh C++ we have<br>[18:09] uh tons of them.<br>[18:14] Yeah, I'll admit we were um I I would<br>[18:17] love to be on Node.js the project<br>[18:20] itself, but um wanted to start small.<br>[18:23] I know I know y'all do some tricky<br>[18:25] things in in both of those projects. Um<br>[18:29] >> so maybe I'll add Fastify to your mix if<br>[18:32] that's cool, Rob.<br>[18:33] >> Yeah. Yeah.<br>[18:33] >> Okay.<br>[18:34] >> Yeah, we actually use Fastify<br>[18:35] internally. It's pretty nice.<br>[18:36] >> Awesome.<br>[18:41] Then if folks have questions for for<br>[18:43] you, Rob, or for the project, what's the<br>[18:45] best way for them to reach out to you or<br>[18:47] to get help?<br>[18:49] >> Um, yeah, reach out to me for all the<br>[18:51] above and I can get you connected um<br>[18:53] with whoever needs to be uh looped in.<br>[19:03] All right, cool. Well, um you're more<br>[19:06] than welcome to stick around if you'd<br>[19:07] like the rest of our working group call.<br>[19:10] Um and if not, then we will bid you a<br>[19:13] do. But yeah, um we got a couple of the<br>[19:15] things that we want to cover today. So,<br>[19:17] let's move on to incident response plan.<br>[19:23] So, I think Ulyses.<br>[19:26] >> Yes.<br>[19:29] >> Okay. Yeah. I like uh yeah, I I have a<br>[19:32] small proposal. Okay. So, so here's the<br>[19:34] deal. I I created a small PR uh which is<br>[19:36] the 289. Oh, thank you Ben. It's not<br>[19:40] like um officially jet I mean it's not<br>[19:43] like a final version ready to review.<br>[19:45] It's more like a first iteration. So my<br>[19:47] idea was to um join the meeting today<br>[19:50] explain a little bit how this is going<br>[19:51] to work. Ideally most of the discussion<br>[19:54] should happen as sync. So we can solve a<br>[19:57] lot of questions within the week and<br>[19:58] then if something is requires some like<br>[20:00] sync discussion or something in the<br>[20:02] meeting then we can address this in a<br>[20:04] small five to 10 minutes spot in the<br>[20:06] meeting until we have the final version<br>[20:08] of this document. So um just for give<br>[20:10] you some context the idea of this uh<br>[20:12] incident response plan uh came some uh<br>[20:14] time ago when we faced some challenges<br>[20:17] with the GitHub UI and previous incident<br>[20:19] in the past that we you know have<br>[20:21] several ways to discuss it. The idea<br>[20:22] here is more or less to try to<br>[20:24] materialize an idea of how the<br>[20:27] maintainers can reach out to the<br>[20:29] foundation in the way of I need some<br>[20:31] security support and is is not related<br>[20:33] to CDE or something like that is more<br>[20:35] related to GitHub UA chain something<br>[20:37] that is completely outside of my area of<br>[20:40] influence or something that happened to<br>[20:42] me as as project or as a individual<br>[20:45] maintainer and I need support with right<br>[20:47] um the idea here also is try to see uh<br>[20:51] within the foundation like how we should<br>[20:53] address this kind of in incidents uh who<br>[20:56] should be in charge of this in terms of<br>[20:58] we should have a team or not also what<br>[21:00] is the expectations in this in terms to<br>[21:03] solving problems because as these kind<br>[21:05] of problems can be super weird sometimes<br>[21:08] uh so it's hard to say like yeah we<br>[21:10] cannot I mean we are not going to change<br>[21:12] the GitHub UI probably right but we can<br>[21:14] provide feedback to the right group and<br>[21:16] also we can ensure you other things or<br>[21:17] just connect you to the right person on<br>[21:19] GitHub for example I mean there's a lot<br>[21:21] of networking from a website that I<br>[21:22] think uh might be useful as a resource<br>[21:24] in this kind of situation. So that was<br>[21:27] more or less the idea. So in this PR you<br>[21:29] can see um that there is a lot of<br>[21:32] popcorn emojis. So all the popcorn<br>[21:34] emojis basically are uh super up to<br>[21:37] discussions. Uh everything here is not<br>[21:39] set as a stone at all. I included also a<br>[21:42] small mermaid uh diagram at the bottom<br>[21:44] that might help you guide on the process<br>[21:46] a little bit and also motivate Ben to<br>[21:47] help me with this a little bit. I know<br>[21:50] Ven is a great fan of mermaid uh<br>[21:52] graphics. So yeah um this is the idea<br>[21:54] basically if if you want to spend some<br>[21:56] time um today or something like that<br>[21:59] probably uh working on the incident<br>[22:00] categories uh is the best option to<br>[22:03] define like what we should consider in a<br>[22:05] scope or not for this kind of uh<br>[22:07] incident response plan. probably<br>[22:10] something that we want to move outside<br>[22:11] is obviously anything related to<br>[22:13] vulnerabilities in the level of CVES um<br>[22:16] you know security reporting and stuff<br>[22:18] like that because that should be done on<br>[22:20] the project or worst case scenarios will<br>[22:22] be escalated to the CNA right so that's<br>[22:25] not something expected from this group<br>[22:27] that also reduce a lot the pressure from<br>[22:29] the group in terms of you know uh<br>[22:30] respond on time and things like that<br>[22:32] right um so categories that I thought<br>[22:35] that might be interesting um any<br>[22:37] platform chains that might introduce a<br>[22:40] risk to a project. That can be on<br>[22:42] GitHub, that can be on npm, that can be<br>[22:44] whatever, right? Um any account access<br>[22:47] issue that might be tricky to solve like<br>[22:49] for example npm account take over stuff<br>[22:51] like that that might be tricky to<br>[22:52] escalate just support. So we can just<br>[22:54] you know try to speed up on the<br>[22:55] foundation. any kind of weird supply<br>[22:58] chain attack that may happen to one of<br>[22:59] the projects that because you got<br>[23:01] polluted by other random library that<br>[23:03] you you know depend on stuff like that<br>[23:05] that become a complex situation you know<br>[23:07] this kind of exit uh kind of attacks<br>[23:10] things like that on how to handle these<br>[23:11] kind of things and obviously any kind of<br>[23:14] you know uh legal stuff for example that<br>[23:16] might be in terms of licenses in terms<br>[23:18] of things like that that might be a<br>[23:19] little bit tricky and yeah I don't know<br>[23:22] uh that was more or less the first<br>[23:23] brainstorm me from my own right um so<br>[23:25] yeah this is super open uh to discussion<br>[23:27] to include categories to remove<br>[23:28] categories and I will shut up and let<br>[23:30] you uh start with some feedback and<br>[23:32] ideas uh if you prefer sync let's go now<br>[23:35] if you prefer a sync also the PR will be<br>[23:37] open for a while so<br>[23:43] yeah is there anything folks want to<br>[23:44] discuss while we're um together um or do<br>[23:49] folks want some time to read this at<br>[23:51] their leisure and then we can we can<br>[23:54] review<br>[24:00] Uh I left a comment in the proquest but<br>[24:03] um<br>[24:04] just wondering uh if we could merge the<br>[24:07] the nojs one uh and the fastfly one into<br>[24:12] this uh to make it it's like it's like<br>[24:15] generic so we could uh send it to other<br>[24:19] projects as well. uh but yeah this is uh<br>[24:22] I think this is something we should do<br>[24:23] as synchronously<br>[24:25] uh the discussion because it requires<br>[24:28] more time to evaluate and see if that's<br>[24:30] applicable or not.<br>[24:35] Yeah, I think I think that go to a sync<br>[24:37] discussion because what we have on on<br>[24:39] fastify note I think it's more related<br>[24:41] to CDES and you know security uh<br>[24:44] vulnerabilities directly on the source<br>[24:46] code and stuff like that. uh so that<br>[24:48] maybe we should have something uh<br>[24:50] definitely like a template or something<br>[24:51] that the people can use but the aim of<br>[24:53] this uh response plan is not to cover<br>[24:56] CBS it's going to be like more on<br>[24:58] whatever is not a CB but also can be a<br>[25:00] security incident so maybe we can just<br>[25:03] point to this document on this uh<br>[25:05] security policies later on the project<br>[25:07] security policies later on but yeah we<br>[25:09] can we can continue discussing this uh<br>[25:11] sync 100%<br>[25:14] >> yeah I think it's it's a really good<br>[25:16] draft I think that you're um I like the<br>[25:20] way of um marking things for discussion<br>[25:22] with popcorn. Um because there's um<br>[25:26] there's some important questions in<br>[25:27] here, right? Which is like who should be<br>[25:29] involved in vetting these? Um who are<br>[25:32] the potential folks that could be<br>[25:34] assigned as the um I forgot the term,<br>[25:36] but it like the coordinator. Um so yeah,<br>[25:39] but I think this is like a this is a<br>[25:41] really good start and I think it's it's<br>[25:44] very much on the right track of what we<br>[25:45] need.<br>[25:46] So yeah, this is good work.<br>[25:50] So um I think Ulysi is just a just to<br>[25:53] reiterate. So we want to try and look at<br>[25:54] this async this week and then we can um<br>[25:58] use some time in the next um weekly<br>[26:01] meeting if we need to to maybe resolve a<br>[26:03] couple outstanding issues or anything<br>[26:05] that needs in person discussion.<br>[26:07] >> Yeah, that that sounds fantastic. Just<br>[26:09] one minor thing as well. that is like a<br>[26:11] placeholder for stuff that they use<br>[26:13] capital letter like for example the team<br>[26:15] or you know the report until we have a<br>[26:19] proper name right<br>[26:21] >> um just one one quick comment um<br>[26:24] synchronously here Ben Ben kind of<br>[26:26] struck struck me with it as or came to<br>[26:29] me as Ben mentioned uh the the assigne<br>[26:33] um you probably need a racy chart or<br>[26:35] something like that in in in this that<br>[26:37] dictates the roles and responsibilities<br>[26:39] and who's accountable<br>[26:41] consulted, informed, that kind of thing.<br>[26:43] I think just looking through it real<br>[26:44] quick, there there are defined roles and<br>[26:46] that probably be a helpful<br>[26:49] uh intro matter to have in there that<br>[26:51] kind of outlines<br>[26:53] that, too.<br>[26:55] I'm happy to make that comment. I was<br>[26:57] just thinking it off the top of my head<br>[26:59] as Ben mentioned that.<br>[27:01] >> Yeah, Steve, it sounds like you might<br>[27:03] have experience with defining rules for<br>[27:05] a security incident response plan. So if<br>[27:07] you have<br>[27:09] >> anything that you feel free copy pasting<br>[27:10] in there would be useful.<br>[27:11] >> Yeah, I love it. I love it.<br>[27:14] >> Awesome. Thank you.<br>[27:17] >> All right. Uh anything else related to<br>[27:19] the response plan?<br>[27:21] >> I think Robin was muted<br>[27:24] and trying to speak.<br>[27:25] >> Just unmuting. I also think maybe uh<br>[27:27] linking you know our npm and GitHub<br>[27:30] continuity plan as well<br>[27:33] you know because that could be here.<br>[27:37] That's that's a good one. Yeah. And in<br>[27:39] general continuity, if we have other<br>[27:41] platforms and other stuff, that might be<br>[27:43] also uh something to take in account.<br>[27:44] Yeah.<br>[27:51] >> Okay. Uh next up we have minimal VDP.<br>[28:02] I forgot if that was Ulyses or Raphael.<br>[28:06] Sorry, can you repeat the issue?<br>[28:08] >> Oh, it was uh the next topic we have is<br>[28:10] minimal VDP.<br>[28:12] >> Okay. Oh, no, no, no, that's not me. Uh<br>[28:15] I think<br>[28:16] >> Ulysius, was this one you? This is a<br>[28:19] mental note that now for agenda items I<br>[28:21] need to have names so I know who to call<br>[28:22] on. Yeah, I think I think um<br>[28:27] >> I think that was the one from Rude,<br>[28:29] right?<br>[28:30] >> Yeah. Yeah. And the idea from from us as<br>[28:32] a group was that to go with a um minimum<br>[28:36] over the minimum uh template person if<br>[28:39] I'm not mistaken.<br>[28:42] Yeah. Um probably we should designate a<br>[28:45] champion for this. Um<br>[28:49] I'm happy to volunteer. Unless Rafael<br>[28:52] want to<br>[28:57] uh can someone send me? Okay. Thank you.<br>[29:03] Yeah, I think you're right, Liss. We<br>[29:04] need uh we need someone to take over the<br>[29:07] reigns on this one. I do think it is a<br>[29:10] it is something that we should do. Um<br>[29:13] I think what we have is probably<br>[29:19] it's everything, right? And I think it<br>[29:21] might be hard. Um and so I think this is<br>[29:23] a good idea. Um<br>[29:26] Chris,<br>[29:28] >> yeah. Um,<br>[29:31] I think we talked a lot about this back<br>[29:32] when Rudd was first crafting this. Um,<br>[29:35] and I think he did really good work. Um,<br>[29:37] he did really good work, I should say. I<br>[29:39] think. Um, but, uh, in the way of what<br>[29:42] is minimal, um, it was quite what what<br>[29:45] he's got in there as minimal is quite<br>[29:47] extensive, right? Um, so I can take a<br>[29:50] stab at this one. Um, really you want<br>[29:52] something that covers, you know, how do<br>[29:55] people submit vulnerabilities to a<br>[29:57] project? uh whether that's you know a<br>[29:59] reporting email address or using GitHub<br>[30:02] you know um private vulnerability<br>[30:05] reporting feature<br>[30:07] um and just something really easy that a<br>[30:10] m maintainer that doesn't already have a<br>[30:12] policy or has something that maybe<br>[30:14] doesn't even go that far um can at least<br>[30:16] quickly review and adopt and doesn't<br>[30:18] contain the scary legal things like the<br>[30:21] safe harbor stuff um and all of that so<br>[30:25] I can take a stab at<br>[30:27] Um we we we crafted something very<br>[30:31] minimal for um TC39. Um, of course, uh,<br>[30:38] language specifications are have are<br>[30:41] very different than, um, actual<br>[30:43] projects, but, um, I think we can use<br>[30:46] some of the, um, feedback that we got<br>[30:49] for that, um, because we did have quite<br>[30:52] a lot of for for something that has so<br>[30:56] few words, uh, we spent a significant<br>[30:58] amount of time in iteration review. So,<br>[30:59] I can take a stab at that. Um, so Ben,<br>[31:02] you wanted to put names to things. uh<br>[31:04] you can put my name on that. Um and um<br>[31:07] I'll try to find some time uh this week<br>[31:10] to uh um knock that out and we can<br>[31:15] review.<br>[31:15] >> Great. Yeah, thanks Chris. Yeah, I I<br>[31:17] added your name on the um on the agenda,<br>[31:19] but um yeah, thank you for volunteering.<br>[31:24] >> Sure.<br>[31:25] >> Okay. And I think the ju just to close<br>[31:27] the loop, I think the the other guides<br>[31:30] that we have um the that that RD did,<br>[31:33] the recommended policy and the minimal<br>[31:35] policy um I think those have a lot of<br>[31:38] great content um and we can continue to<br>[31:41] um you know recommend those to projects<br>[31:44] um but maybe we should um take a spend<br>[31:48] some time at some point in the not too<br>[31:50] distant future to just review the<br>[31:52] content of those and make sure that we<br>[31:54] still feel like um everything in there<br>[31:57] is good or if there's something we want<br>[31:59] to change. Um, and then you know I'm<br>[32:02] reminded of like uh the I forget what we<br>[32:06] called them but this you know the<br>[32:08] security guidance that we gave for<br>[32:09] projects had like sort of different<br>[32:10] levels right that ex like the<br>[32:13] recommended versus expected or suggest I<br>[32:15] forget the exact terms that were used<br>[32:17] but um we could sort of do the same<br>[32:20] thing with the the the security policy<br>[32:22] stuff where you have you know whether<br>[32:24] you call it a t-shirt size or whatever<br>[32:25] like here's what you should minimally<br>[32:27] have then consider this thing which<br>[32:30] includes more information. And then then<br>[32:32] you get into things like you know<br>[32:33] documenting your threat model so that um<br>[32:37] you know if there's like a category of<br>[32:38] vulnerabilities that um you don't the<br>[32:40] project does not consider<br>[32:42] vulnerabilities therefore don't report<br>[32:43] them. Um and that sort of guidance um<br>[32:46] for more like advanced level or more<br>[32:49] mature projects.<br>[32:53] >> Yeah, I think that's good feedback.<br>[32:57] >> Okay. All right. Right. So, anything<br>[32:59] else on the<br>[33:01] minimal BDP<br>[33:04] before we move on to CPC?<br>[33:11] Okay. So, I I mentioned this in our<br>[33:12] previous conversation which is that um<br>[33:15] one of the things that this group can<br>[33:16] influence, right, is the uh uh CPC<br>[33:20] onboarding requirements for new<br>[33:22] projects. And so, we've been talking<br>[33:23] about that a little bit. So, I think<br>[33:24] there's two items in here. Uh, I'm just<br>[33:27] opening them up locally so I know what<br>[33:29] they are. I think Raphael, maybe these<br>[33:32] are your topics.<br>[33:35] >> Yes. Uh,<br>[33:38] you you mean the<br>[33:40] the the media, right?<br>[33:45] >> Yeah. There's two in here that are<br>[33:47] linked. One is that and then the other<br>[33:49] is um security policy.<br>[33:51] >> Meanwhile, yeah. Yeah. uh so uh the<br>[33:54] these are topics that we have discussed<br>[33:56] in the last of mega sync uh uh as I've<br>[34:00] mentioned there we created the security<br>[34:03] help channel we are we sent messages uh<br>[34:06] through mail to all the open JS projects<br>[34:10] to join that uh that channel and in case<br>[34:13] they they need some help to to ping me<br>[34:17] or releases but I would like I I feel<br>[34:20] that we could create some media or uh<br>[34:24] either the OpenJS Foundation blog post<br>[34:27] to to mention that again just to make<br>[34:30] sure that the OpenJS projects they they<br>[34:33] are aware that they can ask for help<br>[34:35] whenever they want. So uh uh just to<br>[34:40] make sure that we are delivering the<br>[34:42] right message to all of them. So I wrote<br>[34:44] this issue just to<br>[34:47] uh just to have that on mind uh whenever<br>[34:50] we want to publicize about it. So yeah,<br>[34:54] I want to crisp this up a little bit<br>[34:56] because I think it's a it's important is<br>[34:58] that um and Raphael and Ulissiz correct<br>[35:01] me here um where needed, but we we we<br>[35:04] meet every week and oftentimes we're<br>[35:06] talking about how difficult it is or or<br>[35:07] how we don't hear from projects um that<br>[35:11] uh you know because we we have resources<br>[35:14] that can help them. Um but when we reach<br>[35:16] out to projects oftentimes we don't we<br>[35:18] don't hear back and um so it's a little<br>[35:21] bit of a struggle here and we we kind of<br>[35:23] are assuming that they do need our help.<br>[35:25] Um so this is really about making sure<br>[35:27] that they know and that they have a<br>[35:29] clear path to um working with us or<br>[35:32] requesting help from us or getting<br>[35:33] involved.<br>[35:35] >> Uh Ulyses.<br>[35:37] >> Yeah. Something that happened from um<br>[35:40] last week is um there was an announce<br>[35:42] official announcement finally uh in the<br>[35:44] GitHub blog post about the participation<br>[35:48] of some of the projects on on the<br>[35:50] foundation on the I think the technical<br>[35:53] name was GitHub secure open source found<br>[35:55] which was like three weeks in terms<br>[35:57] learning and stuff. uh we learned a lot<br>[35:59] there and probably we can bring a lot of<br>[36:02] topics from what we have learned there<br>[36:05] to the on boarding process of new<br>[36:08] projects. So probably we can you know<br>[36:09] reshape a little bit uh requirements and<br>[36:12] stuff based on what we have learned<br>[36:14] there and so on and we can also bring<br>[36:16] Greg into the discussion one of the the<br>[36:18] people from the GitHub site running the<br>[36:20] program. So that might be a good option<br>[36:22] and try to bring some resources because<br>[36:23] also one of the ideas um they have on<br>[36:26] this program was uh try to you know um<br>[36:30] like prepare one generation of<br>[36:31] maintainers so we can you know just<br>[36:33] expand this to other maintainers and try<br>[36:34] to make it more digestible right so we<br>[36:36] can try to propagate and evangelize this<br>[36:38] idea a little bit more to others um so<br>[36:41] we can see how to adapt this to our<br>[36:42] ecosystem uh but that might be a good<br>[36:44] option<br>[36:47] >> yeah I like that train the trainer idea<br>[36:49] essentially I think That's good. Um,<br>[36:52] yeah, I don't know if just a general<br>[36:53] blog is the right idea, but again,<br>[36:56] sometimes, again, we we hit them where<br>[36:58] they are, whether they're on Discord<br>[36:59] like Electron or what have you. I still<br>[37:02] feel like our town hall meetings um have<br>[37:05] had the best attendance<br>[37:07] um because we're actually throwing<br>[37:08] something on their calendar. So, uh we<br>[37:11] could do that. I think when RD tried it,<br>[37:13] he did too many and it gave too many<br>[37:15] options. I think we just need to have<br>[37:16] one and then some information go out.<br>[37:20] Um,<br>[37:21] that might be a good way to get the<br>[37:23] information. So, but yeah, I think I<br>[37:27] think if we end up doing like a blog to<br>[37:29] the community, you're going to have lots<br>[37:31] of JavaScript projects who are not<br>[37:33] Open.js hosted projects come for you to<br>[37:36] you for help, which is not a bad thing<br>[37:38] if we point them to resources. So maybe<br>[37:41] we do something more along that lines<br>[37:44] just to push it out to the broader<br>[37:46] audience. Um we do have a security page<br>[37:49] um on OpenJS now. It probably needs to<br>[37:52] be updated as well, but that's another<br>[37:54] spot we can drive people to.<br>[37:59] >> Yeah, I think I think the blog post<br>[38:01] might be also um super helpful in order<br>[38:03] to you know let the braid knows uh what<br>[38:06] they can expect in terms of support<br>[38:08] because there are too many topics in<br>[38:09] different areas, right? But um so also<br>[38:12] I'm starting to trying to reach like<br>[38:14] privately to maintainers that I have<br>[38:15] already a previous relationship because<br>[38:16] they contributed to the projects or<br>[38:18] whatever. So um but but having like a<br>[38:20] blog post something that can be less<br>[38:22] brassive like a private message with a<br>[38:25] >> can be good.<br>[38:26] >> Okay, let's schedule time with Kylie to<br>[38:28] make that happen.<br>[38:30] >> Yep.<br>[38:30] >> Go.<br>[38:32] >> I had an idea.<br>[38:33] >> Yeah.<br>[38:34] >> Um we could think about doing a<br>[38:37] quarterly town hall. So something a<br>[38:39] little bit more regular.<br>[38:41] >> Yeah.<br>[38:41] >> Um and<br>[38:44] that would also be very good to include<br>[38:46] in a blog post as well.<br>[38:49] >> So I think if we have enough content for<br>[38:51] that<br>[38:51] >> but you know it could be a thing where<br>[38:53] we are bringing things to the projects<br>[38:55] we could update them on what we've been<br>[38:57] doing that kind of thing and also have<br>[38:59] maybe some open time in the town hall<br>[39:00] for folks to like put forward their<br>[39:04] problems that they're seeing or things<br>[39:05] that they might need help with and and<br>[39:07] that kind of thing. Um, but I like<br>[39:09] having something regular. Um,<br>[39:13] um, but yeah, I'm open I'm open for<br>[39:15] feedback on that.<br>[39:15] >> I love that idea.<br>[39:22] >> So, we could do<br>[39:25] I mean, I think if we have um an inc I<br>[39:29] mean, there's some really interesting<br>[39:31] stuff here to that we could review. like<br>[39:33] if we have an incident response plan, if<br>[39:35] we've got this minimal VDP, that alone I<br>[39:38] think is um enough for a town hall. Um<br>[39:42] and then then if there's like a section<br>[39:44] about the GitHub secure open source fund<br>[39:46] and sort of what we learned there. Those<br>[39:48] are just some some things that just we<br>[39:49] discussed today. That's a that's a<br>[39:51] really good um idea. So maybe we could<br>[39:54] target um like end of September for the<br>[39:57] first one. I only say that because end<br>[39:59] of August uh is is now and is vacation<br>[40:02] time and then end of September would<br>[40:03] give us enough time to prep. Um Robin,<br>[40:06] does that seem<br>[40:08] >> Yeah. No, I think that's good. And then<br>[40:09] actually I can use that content for my<br>[40:11] JS comp opening keynote, too.<br>[40:14] >> Yeah.<br>[40:16] >> Yay.<br>[40:16] >> With some photos of all the lovely faces<br>[40:18] that we have here.<br>[40:21] >> Okay. All right. We'll work towards an<br>[40:23] end of September town hall.<br>[40:28] Okay.<br>[40:35] Hey, Rick.<br>[40:42] Figured out my camera. Sorry, it's been<br>[40:44] a bit. Had to fix it.<br>[40:45] >> Always good to see you. Uh, okay, that<br>[40:48] all makes sense. And then so the last<br>[40:49] thing on here was the um I kind of split<br>[40:51] up these two things because we have the<br>[40:53] topic of requesting help from this group<br>[40:55] and then um working with the CPC on<br>[40:58] updating onboarding requirements. I<br>[41:00] think those are two different things so<br>[41:01] I just split those up. So um Raphael<br>[41:05] this is the minimum set of security<br>[41:08] policies as part of OpenJS onboarding.<br>[41:11] So right right now if if I recall<br>[41:13] correctly our onboarding requirement is<br>[41:16] that there must be a security policy. I<br>[41:19] I don't think it goes into much more<br>[41:21] depth than that. And so I think the idea<br>[41:24] here is to um<br>[41:26] >> yes<br>[41:27] >> be a little bit more verbose on what<br>[41:28] we're asking products to do. So yeah<br>[41:30] Raphael I'll I'll hand it over to you.<br>[41:33] >> Yeah that's correct. uh I mean uh I<br>[41:35] think we have discussed that in the last<br>[41:36] meeting uh that uh we should define uh<br>[41:39] just a minimal secured MD for the<br>[41:42] projects that uh goes uh on boarded to<br>[41:45] the OpenJS foundation. uh and then I<br>[41:48] have discussed that with in the command<br>[41:51] center repository and this is the result<br>[41:54] we came up uh<br>[41:57] I said it's in the issue uh but I will<br>[42:00] send in the chat uh and we just need<br>[42:04] like an approval or more review from<br>[42:08] from the team and uh once approved we<br>[42:11] can uh organize how to uh make it uh<br>[42:16] global and how to apply that retrobably<br>[42:19] to other projects that doesn't have one.<br>[42:26] >> Yeah, I think that's great. Once once<br>[42:28] this group is ready, the way that we<br>[42:31] would move this forward would be um<br>[42:34] yeah, it would be a PR against the um<br>[42:38] CPC<br>[42:40] uh documentation. I think it's the<br>[42:42] project onboarding. um and it needs to<br>[42:44] have the agenda label um so that it can<br>[42:47] be discussed in the the next CPC call<br>[42:49] where that happens. Um uh so that's the<br>[42:51] way that that works. The the other point<br>[42:54] here is that how to ensure that projects<br>[42:59] that have already been onboarded keep up<br>[43:01] to date. That is something the CPC is<br>[43:03] working on now and does not have a<br>[43:05] solution for. Um so it's timely I would<br>[43:09] say. Um, and this is a really good<br>[43:11] example of like, hey, we've updated our<br>[43:13] security policies based on new<br>[43:14] information, new best practices, all<br>[43:16] this great stuff. Projects that were<br>[43:18] onboarded<br>[43:20] 5 years ago, right? There might be some<br>[43:22] some work that needs to be done. So, how<br>[43:24] do we how do we do that? Um, so that's a<br>[43:26] really good<br>[43:28] um discussion.<br>[43:31] Yeah, I I think we could um uh see how<br>[43:35] we can um uh organize that in the<br>[43:38] command center repository because I<br>[43:40] believe we could set up some automation<br>[43:42] to send message or to receive feedbacks<br>[43:45] from then. Uh but yeah, that's a second<br>[43:48] step of this this idea. So I I wait uh<br>[43:51] for uh until the end of this day uh if<br>[43:55] you if you any of you have any<br>[43:57] suggestion to this document. So I will<br>[43:59] open the request uh and then if you want<br>[44:01] to review that uh that would be great.<br>[44:07] >> Awesome. Thank you Rafael.<br>[44:11] >> Okay.<br>[44:13] Any other um any other business any<br>[44:16] other walk-on topics or anything that<br>[44:19] folks want to discuss while we are here?<br>[44:22] Just looking at the chat real quick to<br>[44:24] see if there's anything.<br>[44:26] Ulyses. Yeah, I think something that um<br>[44:30] might worth uh in as part of the on<br>[44:33] boarding as because it's the peak of uh<br>[44:36] you know motivation of the people when<br>[44:37] when they join uh maybe is to uh give<br>[44:40] them some context uh I mean some content<br>[44:42] related to uh how to issue CVS and stuff<br>[44:47] like that especially using the CNA of<br>[44:49] the of the foundation like uh because<br>[44:52] maybe when they joined the foundation<br>[44:54] they never did a CV before so there's<br>[44:56] like a lot pragmatical questions on how<br>[44:59] that works, how to use the advisories,<br>[45:01] you know, these kind of things. So maybe<br>[45:03] worth to you know have something ready<br>[45:05] to them in order of this is the guide on<br>[45:07] on how you sold this or you know just as<br>[45:10] part of the on boarding do a small you<br>[45:12] know like body on boarding. So we can<br>[45:15] have some people who has experience on<br>[45:17] this that can just you know go with the<br>[45:18] project like a half an hour and<br>[45:20] explaining everything in details and see<br>[45:21] how their technical uh level and skills<br>[45:24] are on this topic. So basically they are<br>[45:26] from from from that moment on they it's<br>[45:29] more easy for them to issue CVS and<br>[45:30] stuff.<br>[45:33] >> That's a really interesting idea. Um<br>[45:38] it made me think of this idea. You know<br>[45:40] we have this we have this long list of<br>[45:42] things that we do for project onboarding<br>[45:44] right which is like have a security<br>[45:45] policy. Um you know make sure your<br>[45:47] license are up to date blah blah blah<br>[45:48] blah blah. But I'm not sure maybe Robin<br>[45:51] you can help help with this one. I'm not<br>[45:53] sure how much we have in terms of like<br>[45:55] welcome to the foundation. Here's a<br>[45:58] checklist of things that are available<br>[46:00] to you now, right? Like here's the um<br>[46:03] the security cloud space meets here. The<br>[46:05] CPC meets here. If you have<br>[46:07] infrastructure requests, you can do<br>[46:09] this. If you need to file a CLA, you can<br>[46:11] do this. Um, I think we we we kind of<br>[46:14] know what all that stuff is, but I don't<br>[46:16] know um if we formally like present that<br>[46:20] in some way or to the to the project so<br>[46:22] that they're aware of like here's all<br>[46:25] the stuff that you now have available to<br>[46:26] you.<br>[46:29] >> Not formally. Usually when it's often<br>[46:31] like a CPC chair and I will meet with a<br>[46:33] prospective project and sort of walk<br>[46:35] through some of those things, but it's<br>[46:37] not like packaged up into a welcome<br>[46:41] packet.<br>[46:42] >> Yeah. So it might be something that we<br>[46:44] can we can sort of maintain. There's<br>[46:45] just benefits of joining the foundation,<br>[46:48] right? Um<br>[46:49] >> Yeah. And we do have a you know a slide<br>[46:51] that lists a number of Yeah, I have a<br>[46:55] couple of slides.<br>[47:00] Okay, that's a good idea. Maybe I'll<br>[47:03] work on that one.<br>[47:06] Uh, okay. Other other topics that folks<br>[47:09] have.<br>[47:14] Uh, small one. Uh, maybe maybe not for<br>[47:18] the boarding. Maybe yes. As we have been<br>[47:20] discussing today about uh licenses<br>[47:22] because of the FOSA uh demo. So maybe<br>[47:25] worth also as part of the onboarding um<br>[47:28] to ensure that the Brit have done some<br>[47:30] kind of um<br>[47:33] machinedriven check on the dependencies<br>[47:36] and dependencies they have on on their<br>[47:38] own depend because sometimes might<br>[47:40] happen like for example if you're m<br>[47:41] project but you have some ATPL or<br>[47:44] whatever as a subsup dependency then you<br>[47:46] have some compliance problems on your<br>[47:47] licenses and that's a hard step to do as<br>[47:51] a maintainer because I mean having a<br>[47:52] clear license for your own project is<br>[47:54] something easy to review but but knowing<br>[47:56] your own dependencies in that li of<br>[47:59] compliance might be a little bit tricky<br>[48:00] and can anticipate us a lot of issues in<br>[48:03] the future but that's a tricky thing<br>[48:05] because not so sure also how well the<br>[48:07] project do that currently so yeah<br>[48:11] >> yes so we had an open issue probably<br>[48:13] five years ago I think Michael Dawson<br>[48:15] had opened it about license scanning and<br>[48:17] we had worked with the LF team and that<br>[48:19] was supposedly under development but I<br>[48:21] know things have changed so Um, again,<br>[48:24] FASA does do a lot of work with CNCF, so<br>[48:27] if that's the path, you know, we want to<br>[48:29] take, but I I think we found it was<br>[48:33] something we couldn't uh we couldn't<br>[48:35] manage 5 years ago, but maybe we can<br>[48:37] today.<br>[48:40] Yeah.<br>[48:48] Okay,<br>[48:52] last call for any other topics.<br>[48:59] Okay, well, always good to see you all.<br>[49:02] Enjoy the rest of your Monday and if I<br>[49:03] don't talk with you, I'll see you next<br>[49:05] week.<br>[49:06] >> Bye, folks.<br>[49:08] >> Bye. Hi everybody. <!-- deep-read:sections end -->