]> git.sesse.net Git - ffmpeg/blob - doc/dev_community/resolution_process.md
avcodec/tests/avpacket: use av_packet_alloc() to allocate packets
[ffmpeg] / doc / dev_community / resolution_process.md
1 # Technical Committee
2
3 _This document only makes sense with the rules from [the community document](community)_.
4
5 The Technical Committee (**TC**) is here to arbitrate and make decisions when
6 technical conflicts occur in the project.
7
8 The TC main role is to resolve technical conflicts.
9 It is therefore not a technical steering committee, but it is understood that
10 some decisions might impact the future of the project.
11
12 # Process
13
14 ## Seizing
15
16 The TC can take possession of any technical matter that it sees fit.
17
18 To involve the TC in a matter, email tc@ or CC them on an ongoing discussion.
19
20 As members of TC are developers, they also can email tc@ to raise an issue.
21
22 ## Announcement
23
24 The TC, once seized, must announce itself on the main mailing list, with a _[TC]_ tag.
25
26 The TC has 2 modes of operation: a RFC one and an internal one.
27
28 If the TC thinks it needs the input from the larger community, the TC can call
29 for a RFC. Else, it can decide by itself.
30
31 If the disagreement involves a member of the TC, that member should recuse
32 themselves from the decision.
33
34 The decision to use a RFC process or an internal discussion is a discretionary
35 decision of the TC.
36
37 The TC can also reject a seizure for a few reasons such as:
38 the matter was not discussed enough previously; it lacks expertise to reach a
39 beneficial decision on the matter; or the matter is too trivial.
40
41 ### RFC call
42
43 In the RFC mode, one person from the TC posts on the mailing list the
44 technical question and will request input from the community.
45
46 The mail will have the following specification:
47 * a precise title
48 * a specific tag [TC RFC]
49 * a top-level email
50 * contain a precise question that does not exceed 100 words and that is answerable by developers
51 * may have an extra description, or a link to a previous discussion, if deemed necessary,
52 * contain a precise end date for the answers.
53
54 The answers from the community must be on the main mailing list and must have
55 the following specification:
56 * keep the tag and the title unchanged
57 * limited to 400 words
58 * a first-level, answering directly to the main email
59 * answering to the question.
60
61 Further replies to answers are permitted, as long as they conform to the
62 community standards of politeness, they are limited to 100 words, and are not
63 nested more than once. (max-depth=2)
64
65 After the end-date, mails on the thread will be ignored.
66
67 Violations of those rules will be escalated through the Community Committee.
68
69 After all the emails are in, the TC has 96 hours to give its final decision.
70 Exceptionally, the TC can request an extra delay, that will be notified on the
71 mailing list.
72
73 ### Within TC
74
75 In the internal case, the TC has 96 hours to give its final decision.
76 Exceptionally, the TC can request an extra delay.
77
78
79 ## Decisions
80
81 The decisions from the TC will be sent on the mailing list, with the _[TC]_ tag.
82
83 Internally, the TC should take decisions with a majority, or using
84 ranked-choice voting.
85
86 The decision from the TC should be published with a summary of the reasons that
87 lead to this decision.
88
89 The decisions from the TC are final, until the matters are reopened after
90 no less than one year.
91