Dops + Ddev

→ Europe/Zurich
2/R-014 (CERN)

2/R-014

CERN

10
Show room on map
Description

The monthly Dops meeting (Dirac(X) operations) will run just before the weekly Ddev (Dirac(X) developers) meeting. 

Zoom Meeting ID
62504856418
Host
Federico Stagni
Useful links
Join via phone
Zoom URL
    • 10:00 → 11:00
      Dirac(X) operations (Dops)
      Convener: Federico Stagni (CERN)

      Dops – 24/09/2026

      At CERN: Federico, Alexandre, Chistopher, Christophe, , Alexander, Alan, Marco, Valentin, Todor, Andre, Vladimir
      On Zoom: Luisa, Loris, Jorge, Daniela, Héloise, Ueda, Janusz, Bertrand, Xiaomei, Hideki, Ryunosuke, Juraj, Volodymyr
      Apologies:


      this meeting is being recorded

      Previous meetings + follow-ups

      • Last Dops August 27th Follow-ups:
        • NTR

      Communities issues and requests : roundtable

      LHCb:

       Federico+Christopher+Christophe+Alexandre+Ryun

      • Running in production the latest releases of everything

      Belle2

       Ueda, Hideki

      • Token based auth for ARC7 sites do not seem to work
        •  Alexandre Not working yet, still some issues with accounting
        • Maybe if the site migrated accounting to auditor it would already work

      Juno+BES3:

       Xiaomei

      • FTS4?  Christophe in principle the APIs did not change, so it should be OK but we have not tried
        • We can have in theory different sites with different FTS versions

      EGI+IN2P3

       Andrei, Mazen

      •  

      CTAO

       Loris

      • NTR

      CLIC(+FCC)

       André, Juraj

      • fromPreviousMeeting Migration to v9: meet every week. v9 server set-up, DiracX running in paas.cern.ch

      CMS

       Marco

      GridPP:

       Daniela, Simon, Janusz

      • Upgraded prod to 8.0.84 for LFN fix, seems to work.

      Releases announcements and reviews

      DiracOS

      DIRAC

      • v8.0.84

        • define absolute outputPath by specifying it with the LFN: prefix, also allows using wild cards in outputData file names specified as LFNs
      • v9.0.25

        • rename LegacyClientEnabled to FutureClientEnabled
        • many other fixes
      • v9.1.19

        • add a BlockSize parameter to the FilePlugin to be allowed to overwrite the default
        • the CleanReqDBAgent can aggregate DataStore Requests together
        • AccountingDB optimized with caching
        • allow to split the DataStore based on AccountingType
        • allow fractional MatchingDelay for sub-second matcher throttling

      reminder for multi-branch support if a PR needs to be applied to more than 1 branch, it is responsibility of the developers to create all of them. Only at that time they will be merged.

      DiracX

      • v0.4.1
        • cli: rename LegacyClientEnabled to FutureClientEnabled
        • add pilot database and router
        • tasks: add dummy job executor

      CWL

      • CWL ADR

      DiracX-web

      • first non-alpha release ?
        • NTR

      Pilot

      interCEde

      Agenting and AI developments

      • NTR

      Feature requests, and developers’ issues: inputs and prioritizations from communities

      Transformation System ADRs

      •  Valentin how would you like to proceed on the review? requirements? benchmarks?
        • they are all based on the requirements
        • we do not have numbers of the benchmarks
      •  Valentin what is the total amount of resources that is needed to run the system?
        • right now the requirements are tiny. The main cost is getting dirac credentials, where the main cost is actually cryptography
      • DB is optimized for MySQL: what about Oracle?
        • not tested, maybe this can be a work from CMS

      AOB

      • NTR

      Next appointments

    • 11:00 → 12:00
      Dirac(X) developers (Ddev)
      Convener: Alexandre Franck Boyer (CERN)

      # DIRAC Development Meeting (Ddev)

      **At CERN**: Federico, Alexandre, Chistopher, Christophe, , Alexander, Alan, Marco, Valentin, Todor, Andre, Vladimir
      **On Zoom**: Luisa, Loris, Jorge, Daniela, Héloise, Ueda, Janusz, Bertrand, Xiaomei, Hideki, Ryunosuke, Juraj, Volodymyr
      **Apologies**: 

      ## Product Goals & Roadmaps

      ## Refinements 

      ### Needs triage

      https://github.com/orgs/DIRACGrid/projects/30/views/7

      **Goal: build a shared understanding of the project.**

      > .github

      > DIRAC
      - [Weak OwnerGroup check in ReqProxy](https://github.com/DIRACGrid/DIRAC/issues/8736) - need Simon

      > DiracOS2

      > WebAppDIRAC

      > diracx-web

      > diracx
      - [Add mkdocstrings to link source code from the md files](https://github.com/DIRACGrid/diracx/issues/620)

      - [Cache static endpoint responses](https://github.com/DIRACGrid/diracx/issues/835)

      - [rss should likely be renamed](https://github.com/DIRACGrid/diracx/issues/1041)

      - [DB Migration](https://github.com/DIRACGrid/diracx/issues/982) - to elaborate
      - [RSS](https://github.com/DIRACGrid/diracx/issues/790)
          - [Phase1](https://github.com/DIRACGrid/diracx/issues/836) - need an ADR
          - [Phase2](https://github.com/DIRACGrid/diracx/issues/889) - in progress

       

      > Pilot

      > diracx-charts

      > dirac-cwl

      > signurlarity

       

      **External deps**

      ### [Temporary Section] In progress, predating the new organization

      https://github.com/orgs/DIRACGrid/projects/30/views/8

      Various people still need to deal with old and staled PRs. We will take them into account in the next sprints. 

      ### External dependencies

      https://github.com/orgs/DIRACGrid/projects/30/views/9

      ---

      [Planning Poker](https://en.wikipedia.org/wiki/Planning_poker)
      Story points values (based on Fibo)
      - `1pt`: Trivial, very clear (small bug fix, config change)
      - `2pts`: Small, well understood (small feature, clear requirements)
      - `3pts`: Medium, some unknowns (moderate feature)
      - `5pts`: Large, significant complexity (major feature, integration)
      - `8pts`: Very large, many unknowns (should probably be split)
      - `13+pts`: TOO BIG - must split!
      - `?`: not enough knowledge to answer (remember it's ok to ask any questions)

      ## Sprints

      ### Planning (Velocity and Planning Poker)

      - Backlog: https://github.com/orgs/DIRACGrid/projects/30/views/3
      - Current Sprint: https://github.com/orgs/DIRACGrid/projects/30/views/1

      ![](https://codimd.web.cern.ch/uploads/upload_22ea4898d1dbdd7809bf2e3172668689.png)

      **Average Velocity: ~5.8 x FTEs** *Last update: Jun 25th*

      #### :warning: Velocity is a planning tool, not a performance target

      - Velocity going down is NOT bad
      - Velocity going up is NOT always good (might mean over-estimation)
      - Velocity varies sprint-to-sprint
      - We track it to improve estimation, not to judge people

      **What affects velocity:**
      - Estimation accuracy (we're still learning)
      - Complexity of work

      **Our focus:** Delivering value and hitting commitments, not maximizing velocity numbers.

      ### October 1st (IN PROGRESS):

      #### Target and Context

      - **Transition**: 
          - Clean up existing issues/PRs: [Burning Charts](https://github.com/orgs/DIRACGrid/projects/30/insights?period=3M)
          - Integrate ADRs & precise roadmap
      - **RSS**: Finish Phase2
      - **Match Making**: Finish Phase7
      - **Pilot**: Finish PilotManager transition

      #### Availability

      - [name=Alexandre] 30%
      - [name=Natthan] %
      - [name=Luisa] %
      - [name=Loris] 20%
      - [name=Stella] %
      - [name=Jorge] 20%
      - [name=Ryun] 20%
      - [name=Federico] 10%
      - [name=Héloïse] 30%
      - [name=Christophe] %
      - [name=Chris] %
      - [name=Janusz] 30%
      - [name=Mazen] %
      - [name=Andrei] %
      - [name=Simon] %
      - [name=Daniela] %
      - [name=Hideki] %
      - [name=Benedikt] 20%
      - [name=Juraj] 10%
      - [name=Todor] %
      - [name=Henryk] %
      - [name=Dhiraj] 5%
      - [name=Vijay] %
      - [name=Andrea] 10%
      - [name=Alan] %
      - [name=Camille] %
      - [name=Marco] %
      - [name=Valentin] %
      - [name=Alexander] 100%
      - [name=Francesco] 5%

       


      _ FTEs * _ = _ story points

      Expected Story Points:
      Persons:
      Expected Velocity:

      TODO: job_parameters_db not needed for the dummy job executor


      #### Sprint Planning: 

      - Backlog: https://github.com/orgs/DIRACGrid/projects/30/views/3
      - Sprint: https://github.com/orgs/DIRACGrid/projects/30/views/1

      ### September 17th (DONE):

      Expected Story Points: 35
      Persons: 3.3
      Expected Velocity: 10

      15 /3.3 = 4.5

      Comments: NTR

      #### Sprint review: https://github.com/orgs/DIRACGrid/projects/30/views/11

      Related to our goals:
      - **DIRAC to DiracX transition:**
          - diracx-task-run is renamed diracx-tasks
          - More documentation fixes

      - **CWL integration:**
          - NTR

      - **Match-Making POC:**
          - NTR

      - **DIRAC maintenance:**
          - Mostly bug fixes + improving performances
          - No more support for python2 pilot-jobs
          - DIRACTime module is now part of DiracCommon and used in DIRAC
          - Automated update of the conda-forge package as part of the release process
          - LegacyClient CS option is now named FutureClient installations of DiracX in certification should do the change!)

      #### Sprint retrospective

      *The sprint is a boat :boat: ; we are trying to reach an island (target); identify anchors (what slowed you down), wind (what helped), and rocks ahead (risks for next sprint)*

      :warning: **Focus on the process, not people. We're here to improve together! 🚀**

      **:anchor: Anchors (what slowed you down)**
      - *Example: Unclear requirements on X; Waiting for Y delayed Z; ...*


      **:cloud: Wind (what helped)**
      - *Example: Good communication in weekly meetings; Quick code reviews; Clear acceptance criteria on user stories; ...*

       

      **🪨 Rocks (risks for next sprint)**
      - *Example: Team member K on vacation; Dependency on external API L; Technical debt in M; ...*


      ---

      ### Previous Sprints

      #### Summary

      - September 3rd:
        - *18 Story Points / 2.3 people = 7.8 velocity*
        - Comments: LHCb Week + many urgent fixes on DIRAC slowed down the main reviewers

      - August 20th:
        - *7 Story Points / 2.5 people = 2.8 velocity*
        - Comments: too many items given the number of people, but still a few items going from 1 sprint to another (mostly due to holidays here)

      - August 6th:
        - *22 Story Points / 3.1 people = 7.1 velocity*
        - Comments: almost managed to reach the expected velocity, but the defined goal are not yet reached, probably too many. Seems like we better plan when everyone is on holidays :slightly_smiling_face: 

      - July 23rd:
        - *19 Story Points / 3.7 people = 5.1 velocity*
        - Comments: NTR

      - July 23rd:
        - *19 Story Points / 3.7 people = 5.1 velocity*
        - Comments: NTR

      - July 9th:
        - *27 Story Points / 4.3 people = 6.3 velocity*
        - Comments:
          - A lot of people ramping up since the hackathon, a lot of invisible design work under the hood that does not translate into PR merged for now.

      - June 25th:
        - *18 Story Points / 4.2 people = 4.3 velocity*
        - Comments:
          - As usual, we are still overestimating our efforts. A lot of unexpected bug fixes preventing us from going forward with current items.

      - June 11th:
        - *20 Story Points / 3.8 people = 5.2 velocity*
        - Comments:
          - Big difference between expected velocity and effective one. 

      - May 28th:
        - *16.2 Story Points / 4.2 people = 3.8 velocity*
        - Comments:
          - Big difference between expected velocity and effective one. 
          - CHEP planning and long weekends (CH, France) largely affected it.

      - May 14th:
        - *11 Story Points / 4 people = 2.75 velocity*
        - Comments:
          - Lowest velocity since we started, but:
          - RSS end of phase1 is actually trickier than what we initially thought
          - Many people having to start preparing presentations (CHEP, LPC retreat)
          - Many people are working on tasks that are not in the scope of the sprint (to prepare future sprints): LHCb commands to replace the workflow modules, integration of CWL job submission endpoint within diracx
          - A CI failure in DIRAC preventing from merging

      - April 30th:
        - *42 Story Points / 4.1 people = 10.2 velocity*
        - Comments:
          - ~1/4 of the counted SP come from the integration of the tasks
          - `diracx-tasks` are here :tada: 
          - All the essential components are here to transition now.
          - RSS Phase1:
            - Should have been completed but it's still under development. [name=Loris] any blocking point? 
          - New Matcher: 
            - working on a v0.2 schema design expliciting more details about what we want

      - April 16th:
        - *20 Story Points / 2.6 people = 7.7 velocity*
        - Comments:
          - Less people available during the sprint (holidays, CTAO had deadlines). Also some people seemed to spend more time than originally described, some of them less time.
          - A lot of bug fixes that were not planned

      - April 2nd:
        - *37 Story Points / 3.1 people = 11.9 velocity*
        - Comments: NTR

      - March 19th:
        - *23 Story Points / 3.5 people = 7.2 velocity* 
        - Comments:
          - Need to adapt the velocity computation because we are processing a lot of tasks not planned originally in the sprint (which is expected since we still have a lot of PRs without any attached issue to process, ...)

      - March 5th:
        - *19 Story Points / 2.8 people = 6.8 velocity*
        - Comments:
          - Less people available during this sprint, but more realistic expectation, we almost reached the expected velocity!!
          - LHCb AI hackathon: [name=Alexandre] was much less available than expected.
          - Took into account items that were in progress before scrum process (added some SP): resurrecting diracx-web, RSS simplified...

      - February 19th:
        - *38 Story Points / 4.4 people = 8.6 velocity*
        - Comments:
          - French holidays
          - [name=Alexandre] was more available than expected, but did not manage to quickly follow all the PRs.
          - A few tasks have been delayed (10 SP): waiting for further discussion on scheduling and diagrams for new LHCb workflows
          - Lot of "unplanned" items: expected as long as we have to deal with the large backlog of old items.

      - February 5th:
        - *29 Story Points / 3.1 people = 9.4 velocity*
        - Comments:
          - LHCb-CERN had a computing workshop
          - Various people worked on old PRs I did not take into account :warning:

      - January 21st:
        - *6 Story Points / 2.5 people = 2.4 velocity*
        - Comments:
          - LHCb-CERN had a team retreat, LHCb-Spain had a conference.

      - January 7th:
        - *15 Story Points / 3.9 people = 3.8 velocity*
        - Comments:
          - No specific comment, the sprint was split by the holidays.

      - December 10th:
        - *6 Story Points / 3 people = 2 velocity*
        - Comments:
          - About the same as the previous sprint: still a gap between expected/actual availability

      - November 26th:
        - *6 Story Points / 3 people = 2 velocity*
        - Comments:
          - Much lower than the previous sprint because it included tasks started before the sprint.
          - Lots of "almost done" PRs: we are improving the description of the tasks and their size but still not enough (each task should bring value though).

      - November 10th:
        - *22 Story Points / 4.3 people = 5.1 velocity*


      #### Actionable Results from the Retrospective

      > may be we should track the technical debt (have a metric about that)

      - **Action:** Developers should start reviewing PRs if they have some time available and they finished their tasks (at least the first passes)
        - Owner: developers
        - When: Sprint17
        - Status: 11/06/26 In Progress
      - **Action:** Share a more detailed roadmap that we should all understand.
        - Owner: architects
        - When: Sprint17
        - Status: 11/06/26 In Progress
      - **Action:** Reviewer has to double check titles of the PRs before merging.
        - Owner: reviewers
        - When: Sprint16
        - Status: 11/06/26 In Progress 
      - **Action:** Feature PRs should be thoroughly tested in certification.
        - Owner: developers
        - When: Sprint12
        - Status: 29/04/26 In Progress
      - **Action:** Avoid verbose (AI-generated) issues with many implementation details that can deprecate over time.
        - Owner: developers and product owners
        - When: Sprint11
        - Status: 15/04/26 In Progress
      - **Action:** Better view of the PRs ready to be reviewed vs needing changes.
        - Owner: developers
        - When: Sprint8
        - Status: 15/04/26 In Progress
      - **Action:** Better communicate when a PR is going to be big, as soon as possible. Split the work in this case.
        - Owner: developers
        - When: Sprint6
        - Status: 21/01/26 DONE
      - **Action:** Better use of the mattermost channel to get reviews on a given PR
        - Owner: everyone
        - By when: Sprint3
        - Status: 04/02/26 DONE
      - **Action:** Define estimates and velocity based on Sprint2's results, taking into account external contributions (bonus Story Points) and availability
        - Owner: alexandre
        - By when: Sprint3
        - Status: DONE
      - **Action:** Better define the scrum roles
        - Owner: alexandre
        - By when: Sprint5
        - Status: DONE
      - **Action:** Better define `DONE` criteria (what should be included into the PR, and how to make sure we are not introducing too much technical debt)
        - Owner: everyone
        - By when: Sprint2
        - Status: DONE
      - **Action:** Avoid planning dependent tasks in a same sprint
        - Owner: everyone
        - By when: Sprint2
        - Status: DONE

      ## AOB