From 9f09b3c1a805ed4226dd9c93bb17d1109a8fcc5c Mon Sep 17 00:00:00 2001 From: <> Date: Tue, 18 Jul 2023 17:54:25 +0000 Subject: [PATCH] Deployed ed18b5e with MkDocs version: 1.4.3 --- .nojekyll | 0 404.html | 1611 ++++ CNAME | 1 + SIGs/architecture/index.html | 1850 +++++ SIGs/credential-format-comparison/index.html | 1798 +++++ SIGs/index.html | 1796 +++++ assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.7c5c0157.min.js | 3 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.6c7302c4.min.js | 2 + assets/project-icon.png | Bin 0 -> 6777 bytes assets/project-logo.png | Bin 0 -> 19004 bytes assets/stylesheets/main.3a36e643.min.css | 1 + assets/stylesheets/palette.ecc776e4.min.css | 1 + governance/alternate-policy/index.html | 1729 +++++ governance/antitrust/index.html | 1713 +++++ .../index.html | 1725 +++++ governance/charter/index.html | 1928 +++++ governance/code-of-conduct/index.html | 1713 +++++ .../common-repository-structure/index.html | 1936 +++++ governance/elections/index.html | 2096 +++++ governance/index.html | 2016 +++++ governance/maintainer-inactivity/index.html | 1800 +++++ .../maintainers-file-content/index.html | 1960 +++++ .../project-annual-review-process/index.html | 1962 +++++ governance/project-lifecycle/index.html | 2187 ++++++ governance/release-taxonomy/index.html | 1902 +++++ .../roles-and-responsibilities/index.html | 1899 +++++ governance/security/index.html | 1930 +++++ .../special-interest-group-process/index.html | 1869 +++++ governance/task-force-process/index.html | 1894 +++++ index.html | 1692 +++++ meetings/2023-03-08/index.html | 1910 +++++ meetings/2023-03-22/index.html | 1890 +++++ meetings/2023-04-05/index.html | 1910 +++++ meetings/2023-04-19/index.html | 1919 +++++ meetings/2023-05-03/index.html | 1926 +++++ meetings/2023-05-17/index.html | 1960 +++++ meetings/2023-05-31/index.html | 1969 +++++ meetings/2023-06-14/index.html | 1981 +++++ meetings/2023-06-28/index.html | 1968 +++++ meetings/2023-07-12/index.html | 1977 +++++ meetings/YYYY-mm-dd/index.html | 1687 +++++ meetings/index.html | 1730 +++++ plugins/social/layouts/default.yml | 221 + plugins/social/layouts/default/accent.yml | 211 + plugins/social/layouts/default/invert.yml | 221 + plugins/social/layouts/default/only/image.yml | 73 + plugins/social/layouts/default/variant.yml | 232 + projects/index.html | 1771 +++++ search/search_index.json | 1 + sitemap.xml | 3 + sitemap.xml.gz | Bin 0 -> 127 bytes task-forces/OID4VC-due-diligence/index.html | 1775 +++++ task-forces/index.html | 1795 +++++ 86 files changed, 77343 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 CNAME create mode 100644 SIGs/architecture/index.html create mode 100644 SIGs/credential-format-comparison/index.html create mode 100644 SIGs/index.html create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.7c5c0157.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.6c7302c4.min.js create mode 100644 assets/project-icon.png create mode 100644 assets/project-logo.png create mode 100644 assets/stylesheets/main.3a36e643.min.css create mode 100644 assets/stylesheets/palette.ecc776e4.min.css create mode 100644 governance/alternate-policy/index.html create mode 100644 governance/antitrust/index.html create mode 100644 governance/archiving-inactive-repositories/index.html create mode 100644 governance/charter/index.html create mode 100644 governance/code-of-conduct/index.html create mode 100644 governance/common-repository-structure/index.html create mode 100644 governance/elections/index.html create mode 100644 governance/index.html create mode 100644 governance/maintainer-inactivity/index.html create mode 100644 governance/maintainers-file-content/index.html create mode 100644 governance/project-annual-review-process/index.html create mode 100644 governance/project-lifecycle/index.html create mode 100644 governance/release-taxonomy/index.html create mode 100644 governance/roles-and-responsibilities/index.html create mode 100644 governance/security/index.html create mode 100644 governance/special-interest-group-process/index.html create mode 100644 governance/task-force-process/index.html create mode 100644 index.html create mode 100644 meetings/2023-03-08/index.html create mode 100644 meetings/2023-03-22/index.html create mode 100644 meetings/2023-04-05/index.html create mode 100644 meetings/2023-04-19/index.html create mode 100644 meetings/2023-05-03/index.html create mode 100644 meetings/2023-05-17/index.html create mode 100644 meetings/2023-05-31/index.html create mode 100644 meetings/2023-06-14/index.html create mode 100644 meetings/2023-06-28/index.html create mode 100644 meetings/2023-07-12/index.html create mode 100644 meetings/YYYY-mm-dd/index.html create mode 100644 meetings/index.html create mode 100644 plugins/social/layouts/default.yml create mode 100644 plugins/social/layouts/default/accent.yml create mode 100644 plugins/social/layouts/default/invert.yml create mode 100644 plugins/social/layouts/default/only/image.yml create mode 100644 plugins/social/layouts/default/variant.yml create mode 100644 projects/index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 task-forces/OID4VC-due-diligence/index.html create mode 100644 task-forces/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/404.html b/404.html new file mode 100644 index 00000000..1f906692 --- /dev/null +++ b/404.html @@ -0,0 +1,1611 @@ + + + + + + + + + + + + + + + + + + + + + + Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ +

404 - Not found

+ +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..5d2f2f45 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +tac.openwallet.foundation diff --git a/SIGs/architecture/index.html b/SIGs/architecture/index.html new file mode 100644 index 00000000..a01f5036 --- /dev/null +++ b/SIGs/architecture/index.html @@ -0,0 +1,1850 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Architecture - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Architecture Special Interest Group (SIG)

+

This SIG is focused on conversations related to the architecture of digital wallet engines.

+

This SIG was accepted by the TAC on April 5, 2023.

+

Participating

+

This SIG is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

+

Meetings

+

The architecture SIG meets weekly on Mondays at 11:00 AM US/Pacific time. For details, see architecture SIG meeting details. For past notes and recordings, see the architecture SIG wiki.

+

Discord

+

Please join the OpenWallet Foundation Discord and participate in the discussion in the #architecture-sig channel.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/SIGs/credential-format-comparison/index.html b/SIGs/credential-format-comparison/index.html new file mode 100644 index 00000000..3a5726ef --- /dev/null +++ b/SIGs/credential-format-comparison/index.html @@ -0,0 +1,1798 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Credential Format Comparison - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Credential Format Comparison Special Interest Group (SIG)

+

This SIG is dedicated to maintaining information about available credential formats for the benefit of OWF projects and the wider community. The topic is more complex than one might assume on first sight, since there are more than 14 formats for representing digital credentials and most of those formats can be combined with different signature algorithms, ways to represent cryptographic keys (with alone more than a hundred DID methods), status management methods, trust management methods and so on.

+

There is pre-existing work started at Internet Identity Workshop (IIW 34, Spring 2022) and extended and augmented during Rebooting the Web of Trust (RWOT-XI, The Hague, Sept 2022).

+

It consists of a “credential format comparison matrix”, containing information about the technical options in the different dimensions (formats, signature algorithms, …) as well as known credential profiles, i.e. concrete combinations used in implementations and an article explaining the “matrix”.

+ +

This SIG was accepted by the TAC on May 31, 2023. See Credential Format Comparison SIG Proposal for more details.

+

Participating

+

This SIG is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

+

If you are interested in participating, please join the OpenWallet Foundation Discord and participate in the discussion in the #credential-format-comparison-sig channel.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/SIGs/index.html b/SIGs/index.html new file mode 100644 index 00000000..2415621b --- /dev/null +++ b/SIGs/index.html @@ -0,0 +1,1796 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Special Interest Groups (SIGs)

+

A special interest group (SIG) under the Technical Advisory Council (TAC) is a group with a shared interest in advancing a specific area of knowledge, learning, or technology related to the mission of the OpenWallet Foundation where members cooperate to affect or to produce solutions within their particular field. Unlike a task force, SIGs are typically long running and may or may not produce any deliverables. A SIG can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

+
+

Tip

+

If you would like to propose a Special Interest Group, please see the SIG proposal process.

+
+

Active SIGs

+ + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf13b9f9d978896599290a74f77d5dbe7d1655c GIT binary patch literal 1870 zcmV-U2eJ5xP)Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.7c5c0157.min.js b/assets/javascripts/bundle.7c5c0157.min.js new file mode 100644 index 00000000..d5a524e5 --- /dev/null +++ b/assets/javascripts/bundle.7c5c0157.min.js @@ -0,0 +1,3 @@ +"use strict";(()=>{var Ni=Object.create;var Cr=Object.defineProperty;var zi=Object.getOwnPropertyDescriptor;var Vi=Object.getOwnPropertyNames,qt=Object.getOwnPropertySymbols,qi=Object.getPrototypeOf,kr=Object.prototype.hasOwnProperty,dn=Object.prototype.propertyIsEnumerable;var mn=(e,t,r)=>t in e?Cr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,j=(e,t)=>{for(var r in t||(t={}))kr.call(t,r)&&mn(e,r,t[r]);if(qt)for(var r of qt(t))dn.call(t,r)&&mn(e,r,t[r]);return e};var hn=(e,t)=>{var r={};for(var n in e)kr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&qt)for(var n of qt(e))t.indexOf(n)<0&&dn.call(e,n)&&(r[n]=e[n]);return r};var Kt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Ki=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Vi(t))!kr.call(e,o)&&o!==r&&Cr(e,o,{get:()=>t[o],enumerable:!(n=zi(t,o))||n.enumerable});return e};var Lt=(e,t,r)=>(r=e!=null?Ni(qi(e)):{},Ki(t||!e||!e.__esModule?Cr(r,"default",{value:e,enumerable:!0}):r,e));var vn=Kt((Rr,bn)=>{(function(e,t){typeof Rr=="object"&&typeof bn!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(Rr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,a={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function s(M){return!!(M&&M!==document&&M.nodeName!=="HTML"&&M.nodeName!=="BODY"&&"classList"in M&&"contains"in M.classList)}function p(M){var Ne=M.type,R=M.tagName;return!!(R==="INPUT"&&a[Ne]&&!M.readOnly||R==="TEXTAREA"&&!M.readOnly||M.isContentEditable)}function c(M){M.classList.contains("focus-visible")||(M.classList.add("focus-visible"),M.setAttribute("data-focus-visible-added",""))}function l(M){M.hasAttribute("data-focus-visible-added")&&(M.classList.remove("focus-visible"),M.removeAttribute("data-focus-visible-added"))}function f(M){M.metaKey||M.altKey||M.ctrlKey||(s(r.activeElement)&&c(r.activeElement),n=!0)}function m(M){n=!1}function d(M){s(M.target)&&(n||p(M.target))&&c(M.target)}function h(M){s(M.target)&&(M.target.classList.contains("focus-visible")||M.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),l(M.target))}function v(M){document.visibilityState==="hidden"&&(o&&(n=!0),Y())}function Y(){document.addEventListener("mousemove",K),document.addEventListener("mousedown",K),document.addEventListener("mouseup",K),document.addEventListener("pointermove",K),document.addEventListener("pointerdown",K),document.addEventListener("pointerup",K),document.addEventListener("touchmove",K),document.addEventListener("touchstart",K),document.addEventListener("touchend",K)}function X(){document.removeEventListener("mousemove",K),document.removeEventListener("mousedown",K),document.removeEventListener("mouseup",K),document.removeEventListener("pointermove",K),document.removeEventListener("pointerdown",K),document.removeEventListener("pointerup",K),document.removeEventListener("touchmove",K),document.removeEventListener("touchstart",K),document.removeEventListener("touchend",K)}function K(M){M.target.nodeName&&M.target.nodeName.toLowerCase()==="html"||(n=!1,X())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),Y(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var gn=Kt(Hr=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var l={next:function(){var f=c.shift();return{done:f===void 0,value:f}}};return r&&(l[Symbol.iterator]=function(){return l}),l},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},a=function(){var c=function(f){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof f;if(m!=="undefined")if(m==="string")f!==""&&this._fromString(f);else if(f instanceof c){var d=this;f.forEach(function(X,K){d.append(K,X)})}else if(f!==null&&m==="object")if(Object.prototype.toString.call(f)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var f=0;f1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Hr);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(p,c){typeof p!="string"&&(p=String(p)),c&&typeof c!="string"&&(c=String(c));var l=document,f;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),l=document.implementation.createHTMLDocument(""),f=l.createElement("base"),f.href=c,l.head.appendChild(f);try{if(f.href.indexOf(c)!==0)throw new Error(f.href)}catch(M){throw new Error("URL unable to set base "+c+" due to "+M)}}var m=l.createElement("a");m.href=p,f&&(l.body.appendChild(m),m.href=m.href);var d=l.createElement("input");if(d.type="url",d.value=p,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,Y=!0,X=this;["append","delete","set"].forEach(function(M){var Ne=h[M];h[M]=function(){Ne.apply(h,arguments),v&&(Y=!1,X.search=h.toString(),Y=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var K=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==K&&(K=this.search,Y&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},a=i.prototype,s=function(p){Object.defineProperty(a,p,{get:function(){return this._anchorElement[p]},set:function(c){this._anchorElement[p]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(p){s(p)}),Object.defineProperty(a,"search",{get:function(){return this._anchorElement.search},set:function(p){this._anchorElement.search=p,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(a,{toString:{get:function(){var p=this;return function(){return p.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(p){this._anchorElement.href=p,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(p){this._anchorElement.pathname=p},enumerable:!0},origin:{get:function(){var p={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=p&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(p){},enumerable:!0},username:{get:function(){return""},set:function(p){},enumerable:!0}}),i.createObjectURL=function(p){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(p){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Hr)});var an=Kt((Ut,on)=>{(function(t,r){typeof Ut=="object"&&typeof on=="object"?on.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Ut=="object"?Ut.ClipboardJS=r():t.ClipboardJS=r()})(Ut,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Di}});var a=i(279),s=i.n(a),p=i(370),c=i.n(p),l=i(817),f=i.n(l);function m(N){try{return document.execCommand(N)}catch(A){return!1}}var d=function(A){var L=f()(A);return m("cut"),L},h=d;function v(N){var A=document.documentElement.getAttribute("dir")==="rtl",L=document.createElement("textarea");L.style.fontSize="12pt",L.style.border="0",L.style.padding="0",L.style.margin="0",L.style.position="absolute",L.style[A?"right":"left"]="-9999px";var F=window.pageYOffset||document.documentElement.scrollTop;return L.style.top="".concat(F,"px"),L.setAttribute("readonly",""),L.value=N,L}var Y=function(A,L){var F=v(A);L.container.appendChild(F);var W=f()(F);return m("copy"),F.remove(),W},X=function(A){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},F="";return typeof A=="string"?F=Y(A,L):A instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(A==null?void 0:A.type)?F=Y(A.value,L):(F=f()(A),m("copy")),F},K=X;function M(N){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?M=function(L){return typeof L}:M=function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},M(N)}var Ne=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},L=A.action,F=L===void 0?"copy":L,W=A.container,G=A.target,$e=A.text;if(F!=="copy"&&F!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(G!==void 0)if(G&&M(G)==="object"&&G.nodeType===1){if(F==="copy"&&G.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(F==="cut"&&(G.hasAttribute("readonly")||G.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if($e)return K($e,{container:W});if(G)return F==="cut"?h(G):K(G,{container:W})},R=Ne;function B(N){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?B=function(L){return typeof L}:B=function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},B(N)}function se(N,A){if(!(N instanceof A))throw new TypeError("Cannot call a class as a function")}function me(N,A){for(var L=0;L0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof W.action=="function"?W.action:this.defaultAction,this.target=typeof W.target=="function"?W.target:this.defaultTarget,this.text=typeof W.text=="function"?W.text:this.defaultText,this.container=B(W.container)==="object"?W.container:document.body}},{key:"listenClick",value:function(W){var G=this;this.listener=c()(W,"click",function($e){return G.onClick($e)})}},{key:"onClick",value:function(W){var G=W.delegateTarget||W.currentTarget,$e=this.action(G)||"copy",Vt=R({action:$e,container:this.container,target:this.target(G),text:this.text(G)});this.emit(Vt?"success":"error",{action:$e,text:Vt,trigger:G,clearSelection:function(){G&&G.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(W){return Ar("action",W)}},{key:"defaultTarget",value:function(W){var G=Ar("target",W);if(G)return document.querySelector(G)}},{key:"defaultText",value:function(W){return Ar("text",W)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(W){var G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return K(W,G)}},{key:"cut",value:function(W){return h(W)}},{key:"isSupported",value:function(){var W=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],G=typeof W=="string"?[W]:W,$e=!!document.queryCommandSupported;return G.forEach(function(Vt){$e=$e&&!!document.queryCommandSupported(Vt)}),$e}}]),L}(s()),Di=Wi},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function a(s,p){for(;s&&s.nodeType!==o;){if(typeof s.matches=="function"&&s.matches(p))return s;s=s.parentNode}}n.exports=a},438:function(n,o,i){var a=i(828);function s(l,f,m,d,h){var v=c.apply(this,arguments);return l.addEventListener(m,v,h),{destroy:function(){l.removeEventListener(m,v,h)}}}function p(l,f,m,d,h){return typeof l.addEventListener=="function"?s.apply(null,arguments):typeof m=="function"?s.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(v){return s(v,f,m,d,h)}))}function c(l,f,m,d){return function(h){h.delegateTarget=a(h.target,f),h.delegateTarget&&d.call(l,h)}}n.exports=p},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var a=Object.prototype.toString.call(i);return i!==void 0&&(a==="[object NodeList]"||a==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var a=Object.prototype.toString.call(i);return a==="[object Function]"}},370:function(n,o,i){var a=i(879),s=i(438);function p(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!a.string(d))throw new TypeError("Second argument must be a String");if(!a.fn(h))throw new TypeError("Third argument must be a Function");if(a.node(m))return c(m,d,h);if(a.nodeList(m))return l(m,d,h);if(a.string(m))return f(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function l(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function f(m,d,h){return s(document.body,m,d,h)}n.exports=p},817:function(n){function o(i){var a;if(i.nodeName==="SELECT")i.focus(),a=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var s=i.hasAttribute("readonly");s||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),s||i.removeAttribute("readonly"),a=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var p=window.getSelection(),c=document.createRange();c.selectNodeContents(i),p.removeAllRanges(),p.addRange(c),a=p.toString()}return a}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,a,s){var p=this.e||(this.e={});return(p[i]||(p[i]=[])).push({fn:a,ctx:s}),this},once:function(i,a,s){var p=this;function c(){p.off(i,c),a.apply(s,arguments)}return c._=a,this.on(i,c,s)},emit:function(i){var a=[].slice.call(arguments,1),s=((this.e||(this.e={}))[i]||[]).slice(),p=0,c=s.length;for(p;p{"use strict";var gs=/["'&<>]/;ci.exports=ys;function ys(e){var t=""+e,r=gs.exec(t);if(!r)return t;var n,o="",i=0,a=0;for(i=r.index;i{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(a=>{let s=document.createElement("script");s.src=i,s.onload=a,document.body.appendChild(s)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,a,s,p,c)=>{if(a===`${this.url}`){let l=new ErrorEvent("error",{message:i,filename:a,lineno:s,colno:p,error:c});this.dispatchEvent(l),this.onerror&&this.onerror(l)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(` + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

TAC Alternate Policy

+

A TAC voting member may designate an alternate for a specific meeting, and must notify the chair in advance of the meeting. The TAC voting member is responsible for ensuring that the named alternate has enough information to represent the TAC voting member in all matters that will be covered in the meeting. The named alternate will participate in any votes that occur during the meeting for which they were named an alternate, and their vote will count as if it were cast by the TAC voting member.

+
+

Warning

+

If a TAC voting member regularly names an alternate and

+
    +
  • is a TAC Premier Sponsor Representative, then that TAC voting member should consider whether they should replace themselves with the alternate, or
  • +
  • is a TAC "At Large" Representative, then that TAC voting member should consider whether they should resign.
  • +
+
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/antitrust/index.html b/governance/antitrust/index.html new file mode 100644 index 00000000..82afa878 --- /dev/null +++ b/governance/antitrust/index.html @@ -0,0 +1,1713 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Antitrust Policy - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Antitrust Policy

+ +

The LF Europe Antitrust Policy listed at http://lfeurope.be/policies will apply for all Collaborators in the Project.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/archiving-inactive-repositories/index.html b/governance/archiving-inactive-repositories/index.html new file mode 100644 index 00000000..4a296de0 --- /dev/null +++ b/governance/archiving-inactive-repositories/index.html @@ -0,0 +1,1725 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Archiving Inactive Repositories - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Archiving Inactive Repositories

+

OpenWallet Foundation very much appreciates the contributions of the community; however, it is important to archive source repositories that have become inactive in order to ensure that others in the community are not using code or reporting issues on a repository that is not being maintained.

+

Any repository that has not had a release for 12 months or that has had no commits for 6 months may be archived.

+

Projects will be notified via a PR in the appropriate repository, as well as a notice in the project appropriate Discord channel and mailing list, if they exist.

+

Generally speaking if the project's maintainers request to keep the repository active, the request will be honored. However if the repository has a lot of out of date dependencies, particulaly ones relating to security vulnerabilites, this request may not be honored.

+

A request by the project's maintainers to un-archive a repository for the purposes of active contribution will be honored, unless the project is in an emeritus stage. In those cases the project lifecycle issues will need to be resolved first.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/charter/index.html b/governance/charter/index.html new file mode 100644 index 00000000..93971a17 --- /dev/null +++ b/governance/charter/index.html @@ -0,0 +1,1928 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Charter - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

OpenWallet Foundation Charter

+

Exhibit B

+

The OpenWallet Foundation Charter

+

Linux Foundation Europe

+

Effective January 15, 2023

+ +
    +
  1. +

    Mission and Scope of the OpenWallet Foundation.

    +

    The purpose of the OpenWallet Foundation (the “OWF”) is to support various open source, open data and/or other open projects relating to or supporting development of digital wallets, including infrastructure and support initiatives related thereto (each such project, a “Technical Project”) , in accordance with the provisions of this Charter. The governance of each Technical Project is as set forth in the charter for that Technical Project.

    +

    The OWF aims to enable entities to transact securely, and in a privacy enhancing fashion, in- person and on-line where attributes stored in, and managed by, the wallet. The OWF will:

    +
      +
    • develop and maintain open source code for wallets to enable and ensure wallet interoperability,
    • +
    • advocate for the adoption of the interoperable digital wallet technology, and
    • +
    • collaborate with Standards Development Organizations (SDOs) in the development and proliferation of open standards related to digital wallets
    • +
    +

    The OWF will not publish a publicly available wallet (including into any application stores).

    +

    The OWF supports the Technical Projects. The OWF operates under the guidance of the Governing Board of the OWF (the “Governing Board”) and Linux Foundation Europe (the “LFEU”) as may be consistent with Linux Foundation Europe’s tax-exempt status.

    +

    The Governing Board manages the OWF. The Governing Board may establish other committees and other working groups (collectively, and including the Technical Advisory Council, “Committees”) which will report to the Governing Board.

    +
  2. +
  3. +

    Sponsorship.

    +
      +
    1. The OWF will be composed of Premier, General and Associate Sponsors (each, a “Sponsor” and, collectively, the “Sponsors”) in Good Standing. All Sponsors must be current Sponsors of LFEU (at any level) to participate in the OWF as a Sponsor. All sponsors in the OWF, enjoy the privileges and undertake the obligations described in this Charter, as from time-to-time amended by the Governing Board, with the approval of LFEU. During the term of their sponsorship, all Participants will comply with all such policies as the LFEU Board of Directors and/or the OWF may adopt with notice to Sponsors.
    2. +
    3. Premier Sponsors will be entitled to appoint a representative to the Governing Board and any Committee.
    4. +
    5. General Sponsors, acting as a class, will be entitled to annually elect one representative to the Governing Board for every ten General Sponsors, up to a maximum of three total representatives, provided that there will always be at least one General Sponsor representative, even if there are less than ten General Sponsors. The Governing Board determines the General Sponsor representative election process.
    6. +
    7. The Associate Sponsor category of sponsorship is limited to Associate Sponsors of LFEU. The Governing Board may set additional criteria for sponsoring the OWF as an Associate Sponsor. If the Associate Sponsor is itself a membership or participation organization, Associate Sponsorship in the OWF does not confer any privileges or rights to the members or participants of the Associate Sponsor.
    8. +
    9. Sponsors will be entitled to:
        +
      1. participate in OWF general meetings, initiatives, events and any other activities; and
      2. +
      3. identify themselves as sponsors of the OWF supporting the OWF community.
      4. +
      +
    10. +
    +
  4. +
  5. +

    Governing Board

    +
      +
    1. +

      The Governing Board voting members will consist of:

      +
        +
      1. one representative appointed by each Premier Sponsor;
      2. +
      3. the TAC Representative (as defined below), or, in the absence of a chair and with the approval of the Governing Board, any active contributor to a Technical Project so designated by the TAC (such chair or designee the “TAC Representative”); and
      4. +
      5. the elected General Sponsor representative or representatives.
      6. +
      +
    2. +
    3. +

      The Governing Board will also include nonvoting members consisting of the GAC Representative (defined in Section 4) and Associate Representative.

      +
        +
      1. The Associate Representative will be chosen based on their efforts and potential to advance the OWF mission. The Associate Representative will be selected by the Governing Board voting representatives through a process determined by the Governing Board.
      2. +
      +
    4. +
    5. +

      Only one Sponsor that is part of a group of Related Companies (as defined in Section 7) may appoint, or nominate for a sponsorship class election, a representative on the Governing Board. No single Sponsor, company or set of Related Companies will be entitled to: (i) appoint or nominate for sponsorship class election more than one representative for the Governing Board, or (ii) have more than two representatives on the Governing Board.

      +
        +
      1. The only path to two representatives from the same group of Related Companies that will be acceptable will be for one Sponsor to appoint or nominate a representative to the Governing Board and have another of its employees, or an employee of one of its Related Companies, serve as the TAC Representative on the Governing Board.
      2. +
      +
    6. +
    7. +

      Conduct of Meetings

      +
        +
      1. Governing Board meetings will be limited to the Governing Board +representatives, the Outreach Committee Chair, invited guests and OWF staff.
      2. +
      3. Governing Board meetings follow the requirements for quorum and voting outlined in this Charter. The Governing Board may decide whether to allow named representatives (one per Sponsor per Governing Board and per Committee) to attend as an alternate.
      4. +
      5. The Governing Board meetings will be private unless decided otherwise by the Governing Board. The Governing Board may invite guests to participate in consideration of specific Governing Board topics (but such guests may not participate in any vote on any matter before the Governing Board).
      6. +
      +
    8. +
    9. +

      Officers

      +
        +
      1. The officers (“Officers”) of the OWF as of the first meeting of the Governing Board will be a Chairperson (“Chair”) and a Treasurer. Additional Officer positions may be created by the Governing Board.
      2. +
      3. The Chair will preside over meetings of the Governing Board, manage any day-to-day operational decisions, and will submit minutes for Governing Board approval.
      4. +
      5. The Treasurer will assist in the preparation of budgets for Governing Board approval, monitor expenses against the budget and authorize expenditures approved in the budget.
      6. +
      +
    10. +
    11. +

      The Governing Board will be responsible for overall oversight of the OWF, including:

      +
        +
      1. approve a budget directing the use of funds raised by the OWF from all sources of sponsorship or other revenue, including to pay for the hiring of OWF leadership and staff;
      2. +
      3. vet and select a qualified leadership team to run the day-to-day management activities of the organization and evaluate the performance of the team;
      4. +
      5. provide feedback and input to the OWF leadership team responsible for planning and managing the day-to-day operation of the OWF;
      6. +
      7. maintain, if desired, a guiding principles document;
      8. +
      9. nominate and elect Officers of the OWF;
      10. +
      11. supervise and support the leadership team on OWF business and community outreach matters;
      12. +
      13. work with the LFEU on any legal matters that arise;
      14. +
      15. adopt and maintain policies or rules and procedures for the OWF (subject to LFEU’s approval);
      16. +
      17. establish advisory bodies, committees, programs or councils to resolve any particular matter or in support of the mission of the OWF and/or its Technical Projects including in support of end-users and ambassadors for the project any Technical Project;
      18. +
      19. establish any OWF conformance programs for its trademarks and solicit input (including testing tools) if deemed necessary from the applicable oversight body of any Technical Project for defining and administering any programs related to conformance with such Technical Project (each, a “Conformance Program”);
      20. +
      21. publish use cases, user stories, websites and priorities to help inform the ecosystem and technical community;
      22. +
      23. approve procedures for the nomination and election of any representative of the General Sponsors to the Governing Board and any Officer or other positions created by the Governing Board; and
      24. +
      25. vote on all decisions or matters coming before the Governing Board.
      26. +
      +
    12. +
    +
  6. +
  7. +

    Government Advisory Council

    +
      +
    1. The Government Advisory Council (the “GAC”) will provide the OWF advice from government entities approved to participate by the Governing Board. Members of the GAC must be national governments, multinational governmental organizations and treaty organizations, or public authorities. Each may appoint one representative and one alternate representative to the GAC. There are no fees to participate in the GAC.
    2. +
    3. The GAC will provide advice to OWF on issues of public policy, and especially where there may be an interaction between OWF's activities and national policies, laws or international agreements.
    4. +
    5. The Governing Board may appoint a chairperson of the GAC or delegate responsibility for selecting a chairperson to the GAC. The GAC chairperson or another person chosen by the GAC chairperson will serve as the “GAC Representative” responsible for reporting progress back to the Governing Board and interfacing with the TAC. The GAC Representative may attend meetings of the Governing Board and TAC as a non-voting member.
    6. +
    +
  8. +
  9. +

    Technical Advisory Council

    +
      +
    1. +

      The role of the TAC is to facilitate communication and collaboration among the Technical Projects. The TAC will be responsible for:

      +
        +
      1. maintaining an overall strategic vision for technical collaboration and coordinating collaboration among Technical Projects, including development of an overall technical vision for the community;
      2. +
      3. making recommendations to the Budget Committee of resource priorities for Technical Projects;
      4. +
      5. electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC’s representative (the “TAC Representative”);
      6. +
      7. creating, maintaining and amending project lifecycle procedures and processes, deciding where Technical Projects fall within that lifecycle;
      8. +
      9. determining when a technical project should be admitted as a Technical Project or any Technical Project should be considered a TAC Project; and
      10. +
      11. such other matters related to the technical role of the TAC as may be communicated to the TAC by the Governing Board.
      12. +
      +
    2. +
    3. +

      The voting members of the TAC consist of:

      +
        +
      1. one representative appointed by each Premier Sponsor;
      2. +
      3. up to two “at large” representatives appointed by vote of the TAC; and
      4. +
      5. one representative appointed by the technical oversight body (e.g., a technical steering committee) of each TAC Project (as defined herein).
      6. +
      +
    4. +
    5. +

      TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project and others in the general public interested in the OpenWallet Foundation.

      +
    6. +
    7. At the start of the OWF, “TAC Projects” are those Technical Projects listed as having voting representatives on the TAC on the Directed Fund’s web site. Thereafter, any Technical Project can become a TAC Project through the approval of the Technical Project’s technical oversight body and the TAC (by a two-third’s vote). The TAC may approve and modify a project lifecycle policy that will address the incubation, archival and other stages of TAC Projects.
    8. +
    9. The TAC representatives will elect a chair to preside over meetings, ensure minutes are taken and drive the TAC agenda with input from the TAC representatives.
    10. +
    +
  10. +
  11. +

    Voting

    +
      +
    1. Quorum for Governing Board and Committee meetings will require at least fifty percent of the voting representatives. If advance notice of the meeting has been given per normal means and timing, the Governing Board may continue to meet even if quorum is not met, but will be prevented from making any decisions at the meeting.
    2. +
    3. Ideally decisions will be made based on consensus. If, however, any decision requires a vote to move forward, the representatives of the Governing Board or Committee, as applicable, will vote on a one vote per voting representative basis.
    4. +
    5. Except as provided in Section 14.a. or elsewhere in this Charter, decisions by vote at a meeting will require a simple majority vote, provided quorum is met. Except as provided in Section 14.a. or elsewhere in this Charter, decisions by electronic vote without a meeting will require a majority of all voting representatives.
    6. +
    7. In the event of a tied vote with respect to an action that cannot be resolved by the Governing Board, the Chair may refer the matter to the LFEU for assistance in reaching a decision. If there is a tied vote in any Committee that cannot be resolved, the matter may be referred to the Governing Board.
    8. +
    +
  12. +
  13. +

    Subsidiaries and Related Companies

    +
      +
    1. +

      Definitions:

      +
        +
      1. “Subsidiaries” means any entity in which a Sponsor owns, directly or indirectly, more than fifty percent of the voting securities or participation interests of the entity in question;
      2. +
      3. “Related Company” means any entity which controls or is controlled by a Sponsor or which, together with a Sponsor, is under the common control of a third party, in each case where such control results from ownership, either directly or indirectly, of more than fifty percent of the voting securities or participation interests of the entity in question; and
      4. +
      5. “Related Companies” are entities that are each a Related Company of a Sponsor.
      6. +
      +
    2. +
    3. +

      Only the legal entity which has executed a Project Sponsorship Agreement and its Subsidiaries will be entitled to enjoy the rights and privileges of such sponsorship; provided, however, that such Sponsor and its Subsidiaries will be treated together as a single Sponsor.

      +
    4. +
    5. If a Sponsor is itself a foundation, association, consortium, open source project, membership organization, participation organization, user group or other entity that has members or sponsors, then the rights and privileges granted to such Sponsor will extend only to the employee-representatives of such Sponsor, and not to its members or sponsors, unless otherwise approved by the Governing Board in a specific case.
    6. +
    7. OWF sponsorship is non-transferable, non-salable and non-assignable, except a Sponsor may transfer its current sponsorship privileges and obligations to a successor of substantially all of its business or assets, whether by merger, sale or otherwise; provided that the transferee agrees to be bound by this Charter and the Bylaws and policies required by LFEU sponsorship.
    8. +
    +
  14. +
  15. +

    Good Standing

    +
      +
    1. Linux Foundation Europe’s Good Standing Policy is available at https://linuxfoundation.eu/policies and will apply to all Sponsors of this OWF.
    2. +
    +
  16. +
  17. +

    Trademarks

    +
      +
    1. Any trademarks relating to the OWF or any Technical Project, including without limitation any mark relating to any conformance program, must be transferred to and held by LFEU or an entity in LFEU’s control and available for use pursuant to LFEU’s trademark usage policy, available at https://linuxfoundation.eu/policies.
    2. +
    +
  18. +
  19. +

    Antitrust Guidelines

    +
      +
    1. All Sponsors must abide by Linux Foundation Europe’s Antitrust Policy available at https://linuxfoundation.eu/policies.
    2. +
    3. All Sponsors must encourage open participation from any organization able to meet the sponsorship requirements, regardless of competitive interests. Put another way, the Governing Board will not seek to exclude any Sponsor based on any criteria, requirements or reasons other than those that are reasonable and applied on a non- discriminatory basis to all Sponsors.
    4. +
    +
  20. +
  21. +

    Budget

    +
      +
    1. The Governing Board will approve an annual budget and never commit to spend in excess of funds raised. The budget and the purposes to which it is applied must be consistent with both (a) the non-profit and tax-exempt mission of LFEU and (b) the goals of any Technical Project.
    2. +
    3. LFEU will provide the Governing Board with regular reports of spend levels against the budget. Under no circumstances will LFEU have any expectation or obligation to undertake an action on behalf of the OWF or otherwise related to the OWF that is not covered in full by funds raised by the OWF.
    4. +
    5. In the event an unbudgeted or otherwise unfunded obligation arises related to the OWF, LFEU will coordinate with the Governing Board to address gap funding requirements.
    6. +
    +
  22. +
  23. +

    General & Administrative Expenses

    +
      +
    1. LFEU will have custody of and final authority over the usage of any fees, funds, and other cash receipts.
    2. +
    3. A General & Administrative (G&A) fee will be applied by LFEU to funds raised to cover sponsorship records, finance, accounting, and human resources operations. The G&A fee will be 9% of the OWF’s first EUR 1,000,000 of gross receipts each year and 6% of the OWF’s gross receipts each year over EUR 1,000,000.
    4. +
    +
  24. +
  25. +

    General Rules and Operations.

    +

    The OWF activities must:

    +
      +
    1. engage in the work of the project in a professional manner consistent with maintaining a cohesive community, while also maintaining the goodwill and esteem of LFEU in the open source community;
    2. +
    3. respect the rights of all trademark owners, including any branding and usage guidelines;
    4. +
    5. engage or coordinate with LFEU on all outreach, website and marketing activities regarding the OWF or on behalf of any Technical Project that invoke or associate the name of any Technical Project or LFEU; and
    6. +
    7. operate under such rules and procedures as may be approved by the Governing Board and confirmed by LFEU.
    8. +
    +
  26. +
  27. +

    Amendments

    +
      +
    1. This Charter may be amended by a two-thirds vote of the entire Governing Board, subject to approval by LFEU.
    2. +
    +
  28. +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/code-of-conduct/index.html b/governance/code-of-conduct/index.html new file mode 100644 index 00000000..d0c893b7 --- /dev/null +++ b/governance/code-of-conduct/index.html @@ -0,0 +1,1713 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Code of Conduct - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Code of Conduct

+ +

The TAC may adopt a code of conduct (“CoC”) for the Project, which is subject to approval by LF Europe. In the event that a Project-specific CoC has not been approved, the LF Europe Code of Conduct listed at http://lfeurope.be/policies will apply for all Collaborators in the Project.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/common-repository-structure/index.html b/governance/common-repository-structure/index.html new file mode 100644 index 00000000..6c478782 --- /dev/null +++ b/governance/common-repository-structure/index.html @@ -0,0 +1,1936 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Common Repository Structure - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Common Repository Structure

+

OpenWallet Foundation projects are required to maintain a standard set of files in each repository. This document describes the required and recommended files.

+

Required Files with Specified Content

+

Repositories MUST have these files with the specific content in the linked files, or a file with a link to the specified content with minimal exposition. These files MUST be at the root of the repository.

+
    +
  • +

    LICENSE

    +
    +

    Info

    +

    All code within the OpenWallet Foundation should be licensed under Apache 2.0. Exceptions can be made by the OpenWallet Foundation Governing Board.

    +
    +
  • +
  • +

    CODE_OF_CONDUCT.md

    +
  • +
  • SECURITY.md
  • +
+

Required Files with Variable Content

+

Repositories MUST have these files. Named files MUST be at the root of the repository, and may have format suffixes such as .md, .rst, or .txt.

+
    +
  • README - A description of the project that contains information or links to information such as:
      +
    • A reference to the Apache license (required).
    • +
    • The current and important past releases
    • +
    • Documentation for developers and users
    • +
    +
  • +
  • MAINTAINERS - A list of all current maintainers with contact info. A separate document covers the specifics.
  • +
  • CONTRIBUTING - Directions on how to contribute code to the project, or a link to a page with that information.
  • +
  • CHANGELOG - A human readable list of recent changes. Changes should at least include the current release. This file may be maintainer curated or mechanically produced.
  • +
  • Continuous Integration / Continuous Delivery (CICD) configurations - Configurations needed to run CICD on OpenWallet Foundation provided systems (e.g., .github/workflows).
  • +
+ +

Repositories SHOULD have these files. Named files SHOULD be at the root of the repository

+
    +
  • NOTICE - As per section 4 subsection d of the Apache License, Version 2
  • +
  • Apache License Header information in each source code file. For new files added to OpenWallet Foundation repositories they SHOULD include the snippet SPDX-License-Identifier: Apache-2.0 as part of the header.
  • +
  • Build files consistent with the implementation language, such as:
      +
    • For JavaScript/Node.js a package.json file
    • +
    • For Ruby a Gemfile file
    • +
    • For Java one of a Maven pom.xml, an Apache Ant build.xml, or a Gralde build.gradle
    • +
    • file
    • +
    • For Python setup.py and requirements.txt files
    • +
    • For Go go.mod and optionally go.sum
    • +
    • For Rust a cargo.toml file
    • +
    • For multi-lingual repositories a Makefile or executable build.sh script
    • +
    • For other languages, other standard build files a practitioner of the language would expect.
    • +
    +
  • +
  • +

    Testing code - Code to test the code in the repository (such as unit tests), in a location appropriate for the language.

    +
    +

    Why not a MUST?

    +

    Not all repositories can be tested (homebrew, docs), which is the only reason this is a SHOULD.

    +
    +
  • +
+

Prohibited

+

Repositories MUST NOT have these files

+
    +
  • Executable binaries and shared library files built by code in the repository. This includes .exe, .dll, .so, .a and .dylib files not otherwise part of a third party library.
  • +
+

Credits

+

This document is based on the Hyperledger Foundation's Common Respository Structure guideline.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/elections/index.html b/governance/elections/index.html new file mode 100644 index 00000000..389c2b5e --- /dev/null +++ b/governance/elections/index.html @@ -0,0 +1,2096 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Elections - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Elections

+

Electing a Chair

+
+

From the OWF Charter

+

The TAC is responsible for ... electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC’s representative (the “TAC Representative”).

+
+

The TAC voting members (as defined by the charter) will elect a chair on a yearly basis. Only TAC voting members are eligible to run for the TAC chair seat. Electing a chair will be completed through the voting process outlined below. If the TAC chair must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation and allow the TAC to fill the vacancy using the process outlined below.

+

Electing a Vice Chair

+

The TAC voting members (as defined by the charter) will elect a vice chair on a yearly basis. Only TAC voting members are eligible to run for the TAC vice chair seat. Electing a vice chair will be held in conjunction with the chair election using the voting process outlined below. The person with the second highest number of votes will serve as the vice chair. If the TAC vice chair must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation and allow the TAC to fill the vacancy using the process outlined below.

+

Electing "At Large" Representatives

+
+

Implied from the OWF Charter

+

The TAC is responsible for ... appointing up to two "at large" representatives to the TAC.

+
+

The TAC voting members (as defined by the charter) can appoint up to two "at large" representatives to the TAC. The election process for "at large" representatives will occur on a yearly basis. Members of the community can nominate themselves for the position. Alternatively, a TAC voting member can nominate a member of the community; however, the nominee must actively affirm their candidacy. Electing "at large" representatives will be completed through the voting process outlined below. If the "at large" representative must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation. "At large" vacancies will be handled using the process outlined below.

+

Voting Process

+

Voting Tool

+

Voting occurs by a time-limited Helios Voting ballot.

+

Voting Schedule

+

The following is the default timeline for voting. The times can be adjusted to avoid weekends and holidays, but it is essential that the final schedule be published in advance and adhered to.

+
    +
  • Call for nominations: Noon PT, E-16 days
  • +
  • End of call for nominations: Noon PT, E-9 days
  • +
  • A ballot will be distributed on: E-7 days
  • +
  • The election will be completed on: Noon PT, E-day and election results are announced
  • +
+
+

Nominations

+

Nominees should outline their qualifications and provide a statement explaining why they would be a good choice for the seat.

+
+

Vacancies

+

TAC Chair Vacancy

+

Should the TAC Chair seat become vacant, the vacancy will be filled by the vice chair who will serve the remainder of the original term.

+

TAC Vice Chair Vacancy

+

Should the TAC Vice Chair seat become vacant, the vacancy will be filled by using the voting process outlined above and the replacement will serve the remainder of the original term.

+

TAC "At Large" Representative Vacancy

+

Should a TAC "at large" representative seat become vacant, the vacancy will be filled at the next indicative election, by electing a person for a full new term, not by serving out the vacant term.

+
+

Why?

+

A TAC "at large" vacancy is not filled immediately because the charter does not specify a lower limit for TAC "at large" representatives; it only specifies an upper limit.

+
+

TAC Premier Sponsor Representative Vacancy

+

Should a TAC premier sponsor representative seat become vacant, the premier sponsor will immediately appoint a new representative.

+

TAC Project Representative Vacancy

+

Should a TAC Project representative seat become vacant, the technical oversight body (e.g., a technical steering committee) for the TAC project will immediately appoint a new representative.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/index.html b/governance/index.html new file mode 100644 index 00000000..2946a345 --- /dev/null +++ b/governance/index.html @@ -0,0 +1,2016 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Governing Documents

+

The following are the governing documents used by the OpenWallet Foundation's Technical Advisory Council.

+

Code of Conduct

+
    +
  • define clear expectations for behavior
  • +
  • specify what happens when those behaviors are not met
  • +
  • process for reporting code of conduct violations
  • +
+

Roles and Responsibilities

+
    +
  • roles - different ways that people may participate within the technical community
  • +
  • responsibilities - activities and tasks that are expected for each of those roles
  • +
+

Elections

+
    +
  • what elections exist
  • +
  • when are elections held
  • +
  • what is the voting process
  • +
  • what happens when a vacancy occurs
  • +
+

Project Lifecycle

+
    +
  • stages that a project will go through during the life of a project
  • +
  • requirements for entering and exiting each stage
  • +
  • recurring processes to ensure the project is in the right lifecycle stage (see Project Annual Review Process)
  • +
+

Common Repository Structure

+
    +
  • what files are required in a GitHub repository
  • +
  • what files have specific required content
  • +
  • what files are recommended in a GitHub repository
  • +
+

Maintainers Inactivity Policy

+
    +
  • the importance of removing write access from inactive maintainers
  • +
  • what is meant by an inactive maintainer, including timeframes and behaviors
  • +
  • what happens when a maintainer becomes inactive
  • +
+

Security Policy

+
    +
  • how to report a security bug
  • +
  • who is responsible for handling security issues and how those people are selected
  • +
  • what is the timeframe and process that is followed when a security bug is reported
  • +
+

Release Taxonomy

+
    +
  • what release taxonomy is used by the projects
  • +
  • details on the release taxonomy
  • +
+

Repository Inactivity Policy

+
    +
  • the importance of archiving an inactive repository
  • +
  • what is meant by an inactive repository, including timeframes
  • +
  • what happens when a repository becomes inactive
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/maintainer-inactivity/index.html b/governance/maintainer-inactivity/index.html new file mode 100644 index 00000000..a6379dce --- /dev/null +++ b/governance/maintainer-inactivity/index.html @@ -0,0 +1,1800 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Maintainer Inactivity - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Maintainer Inactivity Policy

+
+

Note

+

This policy applies to projects that do not have an explicit maintainer inactivity policy. Where a project has an established and functioning policy, only that project's policy will apply.

+
+

OpenWallet Foundation very much appreciates the contributions of all maintainers but removing write privileges is in the interest of an orderly and secure project.

+

Activity can be code contributions, code reviews, issue reporting, or any other such activity trackable by GitHub attributed to a OpenWallet Foundation repository.

+

When a maintainer has not had any activity in a particular project for three months they will receive a notification informing them of the inactivity policies. The means and manner of notification (email, github mentions, etc.) will be at the discretion of the TAC Chair or who the TAC Chair designates.

+

When a maintainer has not had any activity in a particular project for six months a proposal will be opened up to move the maintainer from active status to emeritus status. A member of the TAC or a OpenWallet Foundation staff member will open this proposal. Any permissions to approve pull requests or commit code and any other such privileges associated with maintainer status will be removed.

+

The proposal will be in the form of a pull request (PR) to the relevant project repositories updating their maintainer lists. The inactive maintainer will be notified of this via an "at" @ mention in the PR. The PR will be open for at least one week to allow time for the project and maintainer to comment.

+

Inactive maintainers who express an intent to continue contributing may request a three-month extension. This request shall be made in the pull request updating their active maintainer status. Typically, only one such extension will be granted.

+

Maintainers who have been moved to emeritus status may return to active status when their activity within the project resumes and the current maintainers of the project approve their reactivation.

+

An OpenWallet Foundation Foundation staff member will provide a report (or maintain an automated means to generate a report) of the most recent GitHub tracked actions for contributors at regular intervals to the TAC. It will be the TAC's responsibility to act on the data.

+

Credits

+

This document is based on the Hyperledger Foundation's Inactivity policy

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/maintainers-file-content/index.html b/governance/maintainers-file-content/index.html new file mode 100644 index 00000000..0374927e --- /dev/null +++ b/governance/maintainers-file-content/index.html @@ -0,0 +1,1960 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + MAINTAINERS.md File Contents - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

MAINTAINERS.md File Contents

+

All OpenWallet Foundation projects MUST have a MAINTAINERS file (MAINTAINERS.md or MAINTAINERS.rst) at the top-level directory of the source code. This document will provide specifics on what to include in the MAINTAINERS file.

+

List of Project Maintainers

+

The first thing that MUST be included in the MAINTAINERS file is a list of the project's maintainers, both active and emeritus.

+

It is recommended that the lists be sorted alphabetically and contain the maintainers name, GitHub ID, LFID, Chat ID, Email, Company Affiliation, and Scope.

+
+

Important

+
    +
  • The email for a maintainer MUST be specified and be a reliable mechanism to contact the maintainer.
  • +
  • Scope is dependent on the project and may not exist for a given project. Scope could be the whole project, a specific repository, specific directories in a repository, or high-level description of responsibility (e.g., Documentation).
  • +
+
+

The following shows the suggested format for the information:

+
+

Example

+

Active Maintainers

+ + + + + + + + + + + + + + + + + + + + + + + +
MaintainerGitHub IDLFIDEmailChat IDCompany AffiliationScope
+

Emeritus Maintainers

+ + + + + + + + + + + + + + + + + + + + + + + +
MaintainerGitHub IDLFIDEmailChat IDCompany AffiliationScope
+
+

What Does Being a Maintainer Entail

+

The MAINTAINERS file SHOULD contain information about the different types of maintainers that exist (whole project, repo, part of repo) and what their duties are (e.g., maintainers calls, quarterly reports, code reviews, issue cleansing).

+

How to Become a Maintainer

+

The MAINTAINERS file SHOULD contain information about how to become a maintainer for the project. This section SHOULD list specific information about what is required. Information that SHOULD be included in this section:

+
    +
  • What is required before someone can be considered to become a maintainer
  • +
  • Consider whether there should be different requirements based on the scope (whole project, repo, part of repo) of maintainership
  • +
  • Whether sponsorship by an existing maintainer is required
  • +
  • How maintainers are proposed to the community. A number of open source projects require that a PR be done against the MAINTAINERS file to make this proposal
  • +
  • How many maintainers must approve the proposed maintainer. This should include information about what happens if someone vetoes the proposal
  • +
  • How long the existing maintainers have to respond to the proposal
  • +
+

How Maintainers are Removed or Moved to Emeritus Status

+

The MAINTAINERS file SHOULD contain information about how a maintainer is removed from the list of active maintainers. Information that SHOULD be included in this section:

+
    +
  • What are the reasons a maintainer would be removed from the list of active maintainers
  • +
  • How this is proposed; similar to the way in which maintainers are added, one way to do this is via a PR against the MAINTAINERS file
  • +
  • How an emeritus maintainer becomes active again
  • +
+

Credits

+

This document is based on the Hyperledger Foundation's MAINTAINERS guideline.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/project-annual-review-process/index.html b/governance/project-annual-review-process/index.html new file mode 100644 index 00000000..121dd045 --- /dev/null +++ b/governance/project-annual-review-process/index.html @@ -0,0 +1,1962 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Project Annual Review Process - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Project Annual Review Process

+

Overview

+

The TAC will undertake an annual review of all OpenWallet Foundation projects. This annual review will include an assessment as to whether:

+
    +
  • each Lab is active
  • +
  • each Growth Stage project is making adequate progress towards the Impact Stage
  • +
  • each Impact Stage project is maintaining progress to remain at the Impact Stage
  • +
+

Reviews will start on the yearly anniversary of the project being accepted or moving to a new stage. The review will include a set of recommendations for each project to improve and/or recommendation to move a project across stages.

+

Projects can be provided with an extension of time in their current stage (up to the discretion of the TAC).

+

The project lifecycle contains Acceptance Criteria for moving a project to a new stage.

+

Filing an Annual Review

+

OpenWallet Foundation staff will notify the project maintainers when the project review is due.

+

Project maintainers are responsible for agreeing between them who will complete the annual review. One of the maintainers should create the review in GitHub under openwallet-foundation/tac/docs/project-reviews.

+
    +
  • Raise a PR titled [Project name] [year] Annual Review (e.g., Amazing Project 2024 Annual Review)
  • +
  • The PR should include a file called <year>-<project name>-annual.md (e.g., 2024-amazingproj-annual.md) with the contents described below
  • +
  • Send an email to the TAC mailing list so that the community knows the PR is there and can comment on it
  • +
+

If your annual review is not submitted within two months of notification, we will take this as a sign that the project is not under active maintenance and the TAC is likely to decide to archive the project and move it to Emeritus status.

+
+

Success

+

If a project has genuinely stalled we can save everyone’s time and effort by archiving it.

+
+

Annual Review Contents

+

Your annual review should answer the following questions:

+
    +
  • Include a link to your project’s LFX Insights page. We will be looking for signs of consistent or increasing contribution activity. Please feel free to add commentary to add colour to the numbers and graphs we will see on Insights.
  • +
  • How many maintainers do you have, and which organisations are they from? (Feel free to link to an existing MAINTAINERS file if appropriate.)
  • +
  • What do you know about adoption, and how has this changed since your last review or since being accepted into OWF? If you can list companies that are adopters of your project, please do so. (Feel free to link to an existing ADOPTERS file if appropriate.
  • +
  • How has the project performed against its goals since the last review? (We won't penalize you if your goals changed for good reasons.)
  • +
  • What are the current goals of the project? For example, are you working on major new features? Or are you concentrating on adoption or documentation?
  • +
  • How can the OpenWallet Foundation help you achieve your upcoming goals?
  • +
  • Do you think that your project meets the criteria for another stage (see Project Lifecycle Acceptance Criteria for the different stages)?
  • +
+

Annual Review by the TAC

+

Annual reviews are performed in order to check in with projects, ascertain their progress, and address any outstanding questions.

+
    +
  • A TAC representative volunteers to lead the review once the project files a PR.
  • +
  • The assigned TAC member reviews the content of the PR and analyzes the project for community health indicators, their findings are placed within a thread in the private TAC channel for discussion.
      +
    • findings should highlight important facts about the project that could influence the TACs decision around the future of the project, its current stage, and path to other stages, etc.
    • +
    • the thread should always include whether the project's view of themselves is accurate and the ask of the TAC is reasonable to assist the project moving forward.
    • +
    +
  • +
  • The project's maintainers are invited to the public TAC meeting to engage in TAC led discussion around the project. Project maintainers are not obligated to attend.
  • +
  • The assigned TAC member provides a summary of the project and leverages the thread's content as the basis of discussion.
      +
    • discussion typically focuses on what is going well with the project and areas to improve.
    • +
    +
  • +
  • The project's maintainers are invited to use this time to voice any concerns and requests for help they may have that are not captured in the PR (or highlight asks within the PR).
  • +
  • At the conclusion of the public meeting, the TAC votes to approve the annual review. Should a concern be registered on a project, the vote will be held separately.
  • +
  • After the meeting wraps up, the assigned TAC member may summarize the discussion on the PR in the form of a comment to document information for the project and community.
  • +
+

Review Outcomes

+

The outcome of the annual review is either:

+
    +
  • At least two-thirds of the TAC members agree to continue to sponsor the project at its current stage, or
  • +
  • +

    If enough TAC members do not agree to continue to sponsor the project at its current stage, we will discuss with you what stage might be the appropriate next stage, including Emeritus stage.

    +
    +

    Info

    +

    If the TAC members recommend moving to a new stage, additional work may be required to provide details on how the project meets the new stage's acceptance criteria.

    +
    +
  • +
+

Credits

+

Ideas were taken from CNCF's Sandbox Annual Review Process.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/project-lifecycle/index.html b/governance/project-lifecycle/index.html new file mode 100644 index 00000000..d07c3e0b --- /dev/null +++ b/governance/project-lifecycle/index.html @@ -0,0 +1,2187 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Project Lifecycle - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Project Lifecycle

+

Overview

+

This governance policy describes how an open source project can formally join the OpenWallet Foundation via the Project Proposal Process. It describes the Stages a project may be admitted under and what the criteria and expectations are for a given stage, as well as the acceptance criteria for a project to move from one stage to another. It also describes the Annual Review Process through which those changes will be evaluated and made.

+

Project progression - movement from one stage to another - allows projects to participate at the level that is most appropriate for them given where they are in their lifecycle. Regardless of stage, all OpenWallet Foundation projects benefit from a deepened alignment with existing projects, and access to mentorship, support, and Foundation resources.

+
+

Info

+

Capitalized terms not otherwise defined in this Project Lifecycle Policy have the meanings ascribed to them in the Charter of the OpenWallet Foundation.

+
+

Project Proposal Process

+

Introduction

+

This governance policy sets forth the proposal process for projects to be accepted into the OpenWallet Foundation. The process is the same for both existing projects which seek to move into the OpenWallet Foundation and new projects to be formed within the OpenWallet Foundation.

+

Project Proposal Requirements

+

Projects must be formally proposed via GitHub. Project proposals submitted to the OpenWallet Foundation should provide the following information to the best of their ability:

+
    +
  • name of project
  • +
  • project description (what it does, why it is valuable, origin and history)
  • +
  • statement on alignment with the OpenWallet Foundation mission
  • +
  • link to current Code of Conduct (if one is adopted already)
  • +
  • sponsor from the TAC, if identified (a sponsor helps mentor projects)
  • +
  • project license (Apache 2.0 by default)
  • +
  • source control (GitHub by default)
  • +
  • issue tracker (GitHub by default)
  • +
  • external dependencies (including licenses)
  • +
  • release methodology and mechanics
  • +
  • names of initial maintainers, if different from those submitting proposal
  • +
  • briefly describe the project's leadership team and decision-making process
  • +
  • link to any documented governance practices
  • +
  • preferred maturity level (see stages below)
  • +
  • list of project's official communication channels (slack, irc, mailing lists)
  • +
  • link to project's website
  • +
  • links to social media accounts
  • +
  • existing financial sponsorship
  • +
  • infrastructure needs or requests
  • +
+

Project Acceptance Process

+
    +
  • Projects are required to present their proposal at a TAC meeting.
  • +
  • +

    The TAC may ask for changes to bring the project into better alignment with the OpenWallet Foundation (adding a governance document to a repository or adopting a Code of Conduct, for example).

    +
    +

    Warning

    +

    The project will need to make these changes in order to progress further.

    +
    +
  • +
  • +

    Projects are accepted via a two-thirds supermajority vote of the TAC.

    +
  • +
  • Satisfaction of the requirements of the initial stage of the project. The TAC will determine the appropriate initial stage for the project. The project can apply for a different stage via the review process.
  • +
+

Stages

+

Every OpenWallet Foundation project has an associated maturity level. Proposed projects should state their preferred maturity level.

+

All projects may attend TAC meetings and contribute work regardless of their stage.

+
flowchart
+  p[Proposal]
+  subgraph as[Active Stages]
+    l[Labs]
+    g[Growth]
+    i[Impact]
+  end
+  subgraph is[Inactive Stages]
+    e[Emeritus]
+  end
+  p --> as
+  l <--> g
+  l <--> i
+  g <--> i
+  as --> is  
+

Labs

+

Definition

+

Labs are those which the TAC believes are, or have the potential to be, important to the ecosystem of Technical Projects or the open wallet ecosystem as a whole. They may be early-stage code just getting started, or they may be long-established projects with minimal resource needs. The Labs stage provides a beneficial, neutral home for these projects in order to foster collaborative development and provide a path to deeper alignment with other OpenWallet Foundation projects via the project lifecycle process.

+

Examples

+
    +
  1. Experimental code that is designed to extend one or more OpenWallet Foundation projects with functionality or interoperability libraries.
  2. +
  3. Independent code that fits within the Foundation's mission and provides potential to meet an unfulfilled need.
  4. +
  5. Code commissioned or sanctioned by the OpenWallet Foundation.
  6. +
  7. Any code that intends to join the Growth or later stages in the future and wishes to lay the foundation for that transition.
  8. +
+

Expectations

+

End users should evaluate Labs with care, as this stage does not set requirements for community size, governance, or production readiness. Labs will receive minimal support from the Foundation. Labs will be reviewed on an annual basis; they may also request a status review by submitting a report to the TAC.

+

Acceptance Criteria

+

To be considered for the Labs Stage, the project must meet the following requirements:

+
    +
  • Submit a project proposal with a Preferred Maturity Level of Labs.
  • +
  • Document an intellectual property policy that leverages the Apache 2.0 license or an open license that has been approved by the OpenWallet Foundation's Governing Board.
  • +
  • In the case of existing projects, an agreement to transfer the project name, trademarks, and electronic account assets (github repo, social media accounts, domain names, etc.) to Linux Foundation Europe for the benefit of the OpenWallet Foundation.
  • +
  • Upon acceptance, Labs must list their status prominently on their website/README (e.g., PROJECT, an OpenWallet Foundation Lab).
  • +
+

Growth Stage

+

Definition

+

The Growth Stage is for projects that are interested in reaching the Impact Stage, and have identified a growth plan for doing so. Growth Stage projects will receive mentorship from the TAC and are expected to actively develop their community of contributors, governance, project documentation, roadmap, and other variables identified in the growth plan that factor into broad success and adoption.

+

In order to support their active development, projects in the Growth stage have a higher level of access to Foundation resources, which will be agreed upon and reviewed on a yearly basis. A project's progress toward its growth plan goals will be reviewed on a yearly basis, and the TAC may ask the project to move to the Labs stage if progress on the plan drops off or stalls.

+

Examples

+
    +
  1. Projects that are on their way or very likely to become Growth or Impact projects.
  2. +
  3. Projects that have developed new growth targets or other community metrics for success.
  4. +
  5. Projects that are looking to create a lifecycle plan (maintainership succession, contributor programs, version planning, etc.).
  6. +
  7. Projects that need more active support from the Foundation or TAC mentorship in order to reach their goals.
  8. +
+

Expectations

+

Projects in the Growth stage are generally expected to move out of the Growth stage within two years. Depending on their growth plans, projects may cycle through Labs, Growth, or Impact stage as needed.

+

Acceptance Criteria

+

To be considered for Growth Stage, the project must meet the Labs requirements as well as the following:

+
    +
  • A presentation at the meeting of the TAC.
  • +
  • 2 TAC sponsors to champion the project and provide mentorship as needed.
  • +
  • Development of a growth plan, to be done in conjunction with their project mentor(s) at the TAC.
  • +
  • Development of a project roadmap that provides differentiated features and capabilities and the timeframe for completion.
  • +
  • Document that it is being used successfully in either proof of concepts or pilots by at least two independent end users which, in the TAC’s judgment, are of adequate quality and scope.
  • +
  • Demonstrate a substantial ongoing flow of commits and merged contributions.
  • +
  • Demonstrate that the current level of community participation is sufficient to meet the goals outlined in the growth plan and roadmap.
  • +
  • Since these metrics can vary significantly depending on the type, scope and size of a project, the TAC has final judgment over the level of activity that is adequate to meet these criteria.
  • +
  • Demonstrates how this project differs from existing projects in the Growth and Impact stages.
  • +
  • Receive a two-thirds supermajority vote of the TAC to move to Growth Stage.
  • +
+

Impact Stage

+

Definition

+

The Impact Stage is for projects that have reached their growth goals and are now on a sustaining cycle of development, maintenance, and long-term support. Impact Stage projects are used commonly in enterprise production environments and have large, well-established project communities.

+

Examples

+
    +
  1. Projects that have publicly documented release cycles and plans for Long Term Support ("LTS").
  2. +
  3. Projects that have themselves become platforms for other projects.
  4. +
  5. Projects that are able to attract a healthy number of committers on the basis of its production usefulness (not simply 'developer popularity').
  6. +
  7. Projects that have several, high-profile or well known end-user implementations.
  8. +
+

Expectations

+

Impact Stage projects are expected to participate actively in TAC proceedings, and as such have a binding vote on TAC matters requiring a formal vote, such as the election of a TAC representative. They receive ongoing financial and marketing support from the Foundation, and are expected to cross promote the Foundation along with their activities.

+

Acceptance Criteria

+

To move from Labs or Growth status, or for a new project to join as an Impact project, a project must meet the Growth stage criteria plus:

+
    +
  • Have a defined governing body of at least 5 or more members (owners and core maintainers), of which no more than one-third is affiliated with the same employer. In the case there are 5 governing members, 2 may be from the same employer.
  • +
  • Have a documented and publicly accessible description of the project's governance, decision-making, and release processes.
  • +
  • Have a healthy number of maintainers from at least two organizations. A maintainer is defined as someone with the commit bit; i.e., someone who can accept contributions to some or all of the project.
  • +
  • Have a Code of Conduct in a form acceptable to the OpenWallet Foundation.
  • +
  • Explicitly define a project governance and maintainer process. This is preferably laid out in a GOVERNANCE.md file and references a CONTRIBUTING.md and MAINTAINERS.md file showing the current and emeritus maintainers (see MAINTAINERS.md File Contents for more information).
  • +
  • Document that it is being used successfully in production by at least two independent end users which, in the TAC’s judgment, are of adequate quality and scope.
  • +
  • Have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).
  • +
  • Have a good standing with respect to security.
  • +
  • Other metrics as defined by the applying Project during the application process in cooperation with the TAC.
  • +
  • Receive a supermajority vote from the TAC to move to Impact stage. Projects can move directly from Labs to Impact, if they can demonstrate sufficient maturity and have met all requirements.
  • +
+

Emeritus Stage

+

Definition

+

Emeritus projects are projects which the maintainers feel have reached or are nearing end-of-life. Emeritus projects have contributed to the ecosystem, but are not necessarily recommended for modern development as there may be more actively maintained choices. The Foundation appreciates the contributions of these projects and their communities, and the role they have played in moving the ecosystem forward.

+

Examples

+
    +
  1. Projects that are "complete" by the maintainers' standards.
  2. +
  3. Projects that do not plan to release major versions in the future.
  4. +
+

Expectations

+

Projects in this stage are not in active development. Their maintainers may infrequently monitor their repositories, and may only push updates to address security issues, if at all. Emeritus projects should clearly state their status and what any user or contributor should expect in terms of response or support. If there is an alternative project the maintainers recommend, it should be listed as well. The Foundation will continue to hold the IP and any trademarks and domains, but the project does not draw on Foundation resources.

+

Acceptance Criteria

+

Projects may be granted Emeritus status via a two-thirds vote from the TAC and with approval from project ownership. In cases where there is a lack of project ownership, only a two-thirds vote from the TAC is required.

+
+

Info

+

If members of the community would like to re-active a project that has been granted Emeritus status, the community must start the lifecycle over again by submitting a new proposal to the TAC.

+
+

Annual Review Process

+

Each project will undergo an annual review process to determine whether projects are in the stage that accurately reflects their needs and goals.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/release-taxonomy/index.html b/governance/release-taxonomy/index.html new file mode 100644 index 00000000..d930fe9a --- /dev/null +++ b/governance/release-taxonomy/index.html @@ -0,0 +1,1902 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Release Taxonomy - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Release Taxonomy

+
+

Note

+

This policy is not about exiting project stages.

+
+

Releases at OpenWallet Foundation must be done according to the SemVer taxonomy. In addition to the semantic versioning scheme, where we use MAJOR.MINOR.PATCH numbering, following the established guidance given in the semver specification, it is also strongly encouraged that projects should use the following tags, as permitted by semver:

+
    +
  • preview
  • +
  • alpha
  • +
  • beta
  • +
  • rcN (release candidate N - where N is 1-n incremented for each candidate)
  • +
  • +

    snapshot-<sha> for interim, possible unstable builds

    +
    +

    Note

    +

    Further, for interim, possibly unstable builds working towards a tagged release, we will append the first seven (7) characters of the SHA-1 hash of the latest commit for the branch from which the build is produced, so that we can identify the commit level of a given test, etc. e.g. 0.6-snapshot-36e99cd

    +
    +
  • +
+

preview

+

Not feature complete, but most functionality is implemented. Any missing functionality that is committed to the production release is identified, and there are specific people working on those features. Not heavily performance tuned, but performance testing has started with the first few hotspots identified and perhaps even addressed. No highest priority issues are in an open state. First-level developer documentation provided to help new developers with the learning curve.

+

alpha

+

Feature complete, for all features committed to the production release. Ready for Proof of Concept-level deployments. Performance can be characterized in a predictable way, so that basic PoC's can be done within the bounds of published expectations. APIs are documented. First attempts at end-user documentation have been made. Developer documentation is further advanced. No highest priority issues are in an open state.

+

beta

+

Feature complete for all features committed to the production release, perhaps with optional features when safe to add. Ready for Pilot-level engagements. Performance is very well characterized and active optimizations are being done, with a target set for the Production release. No highest priority or high priority bugs are in an open state. Developer documentation is complete; end-user documentation is mostly done.

+

rcN

+

For a forthcoming production release, we will prepare multiple candidate releases intended to be heavily tested by the community. As we cycle through resolving uncovered issues, we will issue another when no remaining highest or high priority issues remain, and repeat until we feel confident in releasing a production release, with no qualifier. e.g. 1.0.

+

Credits

+

This document is based on the Hyperledger Foundation's Release Taxonomy policy.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/roles-and-responsibilities/index.html b/governance/roles-and-responsibilities/index.html new file mode 100644 index 00000000..a560136c --- /dev/null +++ b/governance/roles-and-responsibilities/index.html @@ -0,0 +1,1899 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Roles and Responsibilities - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Roles and Responsibilities

+

Technical Advisory Council

+

The OpenWallet Foundation charter states that the TAC is responsible for:

+
+

Quote

+
    +
  1. maintaining an overall strategic vision for technical collaboration and coordinating collaboration among Technical Projects, including development of an overall technical vision for the community;
  2. +
  3. making recommendations to the Budget Committee of resource priorities for Technical Projects;
  4. +
  5. electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC’s representative (the “TAC Representative”);
  6. +
  7. creating, maintaining and amending project lifecycle procedures and processes, deciding where Technical Projects fall within that lifecycle;
  8. +
  9. determining when a technical project should be admitted as a Technical Project or any Technical Project should be considered a TAC Project; and
  10. +
  11. such other matters related to the technical role of the TAC as may be communicated to the TAC by the Governing Board.
  12. +
+
+

TAC Members

+

TAC members are expected to:

+
    +
  • Subscribe to the TAC mailing list and the OpenWallet Github organization to stay aware of the TAC related updates and issues
  • +
  • Regularly participate in the TAC meetings
  • +
  • Bring up and help resolve any issues related to the needs of the OpenWallet technical community
  • +
  • Participate in, and optionally chair, the Task Forces set up by the TAC to address specific issues
  • +
  • Act as stewards for OpenWallet Foundation promoting and helping grow the organization and its activities by engaging of their own accord in activities such as posting on social media, responding to questions raised in forums, helping new community members find their way around, and giving talks at conferences on OpenWallet Foundation related topics
  • +
  • Participate in the appointment and election of "at large" representatives
  • +
+

TAC Chair

+

The TAC chair has the following additional responsibilities:

+
    +
  • Running the TAC meetings, such as the TAC calls per the agreed upon schedule. This includes: setting up and publishing an agenda, running the meeting, and ensuring any outcome is duly recorded
  • +
  • Representing the TAC, and more broadly the OpenWallet Foundation technical community, on the Governing Board, and giving updates to the Governing Board on TAC activities
  • +
+

TAC Vice Chair

+

The TAC vice chair has the following additional responsibilities:

+
    +
  • Running the TAC meetings when the TAC Chair is unable, including setting up and publishing an agenda and ensuring any outcome is duly recorded
  • +
  • Helping to marshall people who want to talk during a meeting
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/security/index.html b/governance/security/index.html new file mode 100644 index 00000000..d26393cc --- /dev/null +++ b/governance/security/index.html @@ -0,0 +1,1930 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Security Policy - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Security Policies

+

Vulnerability Management Team

+

The OpenWallet Foundation's Vulnerability Management Team (VMT) is responsible for managing vulnerability reports for the OWF's projects.

+

Team Members

+
    +
  • Two volunteer developers from each OWF project will serve on the security team.
  • +
  • Each volunteer will have a 12 month commitment to the security team.
  • +
+

Responsibilities

+

The VMT has the following responsibilities:

+
    +
  • help triage and respond to reports following the responsible disclosure policy.
  • +
  • keep the reporter informed of the status of their report by sending updates at a minimum of once per week.
  • +
+

Responsible Disclosure

+
    +
  • 48 working hours to respond to reporter acknowledging the report.
  • +
  • 1 week to triage, report, and coordinate with the affected project maintainers to plan the fix of the bug.
  • +
  • 90 days to fix and release a fix or disclose the security bug.
  • +
  • Any "critical" errors shall be assigned a CVE number and disclosed through the formal CVE system.
  • +
+
+

Example Acknowledgment Response

+

Dear hacker,

+

Thank you for your recent report of a security bug. I am emailing to let you know that we are in the process of investigating your report and will reply to you again when we have determined the validity of your report. We may have further questions that come up as part of our investigation. We appreciate your contribution to project name.

+

Thank you,

+

your name

+
+
+

Example Update

+

Dear hacker,

+

I'm emailing to let you know that we have confirmed your bug report as a valid security concern and have filed a bug in our system. We will keep you informed of the status of the bug.

+

Thank you,

+

your name

+
+

Security Markdown

+

Each project must have the following information included in the SECURITY.md file at the root of the project:

+
# How to Report a Security Bug
+To report a security issue, please email
+[security@lists.openwallet.foundation](mailto:security@lists.openwallet.foundation)
+with a description of the issue, the steps you took to create the issue,
+affected versions, and if known, mitigations for the issue. Our vulnerability
+management team will acknowledge receiving your email within 2 working days.
+This project follows a 90 day disclosure timeline.
+
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/special-interest-group-process/index.html b/governance/special-interest-group-process/index.html new file mode 100644 index 00000000..5b28789b --- /dev/null +++ b/governance/special-interest-group-process/index.html @@ -0,0 +1,1869 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Special Interest Group (SIG) Process - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Special Interest Group

+

A special interest group (SIG) under the Technical Advisory Council (TAC) is a group with a shared interest in advancing a specific area of knowledge, learning, or technology related to the mission of the OpenWallet Foundation where members cooperate to affect or to produce solutions within their particular field. Unlike a task force, SIGs are typically long running and may or may not produce any deliverables. A SIG can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

+

Propose a Special Interest Group

+

To propose a special interest group, create an issue in the TAC GitHub repository using the Special Interest Group template. The issue should be named "Special Interest Group Proposal: \<name of special interest group>". The issue should include the following information:

+
    +
  • Introduction/background material
  • +
  • Objectives of the special interest group
  • +
  • List of deliverables or work products (optional)
  • +
  • Leader(s)
  • +
  • Initial participant list
  • +
+

Approval Process

+

The TAC will review the special interest group proposal first by providing comments in the issue and secondly by bringing the special interest group proposal to a discussion and vote in a TAC meeting.

+

The decision of the vote will be documented in the issue. If the special interest group is approved, a discussion channel in Discord will be created. In addition, we will work with the OpenWallet Foundation operations team to schedule a meeting on the OpenWallet Foundation calendar. If necessary, a GitHub repository and/or mailing list will also be created at the request of the special interest group leader(s).

+

Special Interest Group Procedures

+

The special interest group can decide on the mechanism for running the SIG. Meeting minutes and a log of decisions that have been made should be kept for ensuring continuity of the special interest group. The special interest group should update the issue to reflect where the meeting notes and log of decisions is kept or use the issue directly to capture this information.

+

Reporting on Special Interest Group Activities

+

Every quarter the special interest group leader should arrange a time with the TAC chair to present the activities of the SIG at a TAC meeting. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation. This will ensure that the SIG is still active and that there is still value in hosting the special interest group.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/governance/task-force-process/index.html b/governance/task-force-process/index.html new file mode 100644 index 00000000..c07f18db --- /dev/null +++ b/governance/task-force-process/index.html @@ -0,0 +1,1894 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Task Force Process - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + +

Task Force

+

A task force is a group that is focused on a task with limited scope and fixed time to complete. Unlike a (special interest group](./special-interest-group-process.md), a task force will have a specific set of deliverables or work products that it will create and be limited in time to completion. A task force can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

+

Propose a Task Force

+

To propose a task force, create an issue in the TAC GitHub repository. The issue should be named "Task Force Proposal: \<name of task force>". The issue should include the following information:

+
    +
  • Introduction/background material
  • +
  • Objectives of the task force
  • +
  • List of deliverables or work products
  • +
  • Time to complete (no more than 6 months)
  • +
  • Leader(s)
  • +
  • Initial participant list
  • +
+

Approval Process

+

The TAC will review the task force proposal first by providing comments in the issue and secondly by bringing the task force proposal to a discussion and vote in a TAC meeting.

+

The decision of the vote will be documented in the issue. If the task force is approved, a discussion channel in Discord will be created. In addition, we will work with the OpenWallet Foundation operations team to schedule a meeting on the OpenWallet Foundation calendar. If necessary, a GitHub repository and/or mailing list will also be created at the request of the task force leader(s).

+

Task Force Procedures

+

The task force can decide on the mechanism for creating the deliverables. Meeting minutes and a log of decisions that have been made should be kept for ensuring continuity of the task force. The task force should update the issue to reflect where the meeting notes and log of decisions is kept or use the issue directly to capture this information.

+

Reporting on Task Force Completion of Deliverables

+

Upon completion of the task force's deliverables, the task force should arrange a time with the TAC chair to present the deliverables at a TAC meeting. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation.

+

Requesting an Extension on Completion Date

+

If the task force is not able to complete the deliverables by the specified completion date, then the leader of the task force should arrange a time with the TAC chair to discuss the extension at a TAC meeting. This discussion should include information on the current status, the delays, and the expected updates to the schedule. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 00000000..c4b69d5a --- /dev/null +++ b/index.html @@ -0,0 +1,1692 @@ + + + + + + + + + + + + + + + + + + + + + + + + Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + +

Home

+ +

Welcome to the OpenWallet Foundation's (OWF) Technical Advisory Council (TAC) website. Here you will find:

+
+
    +
  • +

    What is the TAC

    +
    +

    Learn more about the Technical Advisory Council's role, responsibilities, and voting members

    +
  • +
  • +

    Governing Documents

    +
    +

    Review the OpenWallet Foundation TAC Governing Documents

    +
  • +
  • +

    TAC Meetings

    +
    +

    See meeting invite details and meeting notes from past meetings

    +
  • +
  • +

    Projects

    +
    +

    OpenWallet Foundation Projects

    +
  • +
  • +

    Special Interest Groups

    +
    +

    OpenWallet Foundation Special Interest Groups (SIGs)

    +
  • +
  • +

    Task Forces

    +
    +

    OpenWallet Foundation Task Forces

    +
  • +
+
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-03-08/index.html b/meetings/2023-03-08/index.html new file mode 100644 index 00000000..1320bb83 --- /dev/null +++ b/meetings/2023-03-08/index.html @@ -0,0 +1,1910 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-03-08 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

2023-03-08

+
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

Agenda

+
    +
  • Welcome and intros of TAC
  • +
  • Reminder of TAC Charter
  • +
  • TAC Chair election
  • +
  • TAC "at large" seats
  • +
  • Call for code from the Community
  • +
  • Open Discussion and Next Steps
  • +
+

Recording

+ +

Actions

+ +

Minutes

+
    +
  • TAC Charter +
  • +
  • TAC Chair Election
      +
    • Tracy Kuhrt is running unopposed – will move to email vote to formalize
    • +
    +
  • +
  • Composition
      +
    • Accenture - Tracy Kuhrt
    • +
    • Futurewei - Wenjing Chu
    • +
    • Gen Digital - Drummond Reed
    • +
    • Visa - Marie Austenaa
    • +
    • “at large” representative #1 appointed by vote of the TAC
    • +
    • “at large” representative #2 appointed by vote of the TAC
    • +
    • one representative appointed by the technical oversight body (e.g., a technical steering committee) of each TAC Project
    • +
    +
  • +
  • Call for Code +
  • +
  • Governance rules +
  • +
  • Open Discussion
      +
    • The Governing Board met yesterday and appointed Daniel Goldscheider as Interim Executive Director. Daniel introduced himself and provided his thoughts on the future of OWF.
    • +
    • A suggestion was made for a landscape review. A comment was made that that work has begun here.
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-03-22/index.html b/meetings/2023-03-22/index.html new file mode 100644 index 00000000..7a2849d6 --- /dev/null +++ b/meetings/2023-03-22/index.html @@ -0,0 +1,1890 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-03-22 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

2023-03-22

+
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

Agenda

+ + + +

Action Items

+
    +
  • Conduct an email vote for the Governance documents approval and adoption.
  • +
  • Conduct an email vote for the TAC "at large" schedule and process.
  • +
  • Todd to confirm whether the TAC can create an alternate policy or whether the Governing Board will need to update the charter to reflect.
  • +
  • Tracy to create a pull request to update the project proposal template to include links to the mission and project lifecycle.
  • +
  • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs.
  • +
+

Minutes

+
    +
  • No comments on the TAC Governance documents. Will conduct an email vote to adopt.
  • +
  • Discussed TAC "at large" election process. Will conduct an email vote to adopt.
  • +
  • Reviewed project proposal process and instructions and went through the template. Two suggested changes:
      +
    • Include a link to the mission.
    • +
    • Include a link to the project lifecycle for stage information.
    • +
    +
  • +
  • Next steps
      +
    • Create a labs organization (openwallet-foundation-labs) to host any lab proposals.
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-04-05/index.html b/meetings/2023-04-05/index.html new file mode 100644 index 00000000..3a68a189 --- /dev/null +++ b/meetings/2023-04-05/index.html @@ -0,0 +1,1910 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-04-05 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-04-05

+

Agenda

+
    +
  • Review action items from last meeting
  • +
  • TAC "at large" election results
  • +
  • Architecture SIG update
  • +
  • Call for code from the community
  • +
  • Open discussion and next steps
  • +
+ + +

Action Items

+
    +
  • Tracy to rename the architecture-task-force GitHub repo to architecture-sig - completed
  • +
  • Jenn to rename the meeting invite for the Outside Architecture Special Interest Group to reflect that the name should be the Architecture SIG
  • +
  • Jenn to add Stavros to the TAC meeting invite - completed
  • +
  • Jenn to add Jeremie to the TAC meeting invite
  • +
  • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs
  • +
+

Meeting Minutes

+
    +
  • Review action items from last meeting
      +
    • Conduct an email vote for the Governance documents approval and adoption - results 3 TAC members voted in favor; 1 TAC member abstained
    • +
    • Conduct an email vote for the TAC "at large" schedule and process - results 3 TAC members voted in favor; 1 TAC member abstained
    • +
    • Todd to confirm whether the TAC can create an alternate policy or whether the Governing Board will need to update the charter to reflect - currently no policy for TAC alternates; if we want this, we would need to present this to the GB to get a charter update
        +
      • The TAC would like to recommend that the board create an alternate policy for the TAC.
      • +
      • The language will be similar to the following "A TAC member can designate an alternate for a specific meeting, and has to notify the chair in advance."
      • +
      +
    • +
    • Tracy to create a pull request to update the project proposal template to include links to the mission and project lifecycle - pull request created and merged
    • +
    • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs - not yet completed
    • +
    +
  • +
  • TAC "at large" election results
      +
    • Jeremie Miller
    • +
    • Stavros Kounis
    • +
    +
  • +
  • Architecture SIG update +
  • +
  • Call for code from the community
  • +
  • Next steps
      +
    • Discussion regarding the upcoming conference season, including IIW, EIC, and others.
    • +
    • Suggestion was made to create an OpenWallet Foundation event calendar.
    • +
    • Next meeting is April 19, 2023.
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-04-19/index.html b/meetings/2023-04-19/index.html new file mode 100644 index 00000000..9cecb414 --- /dev/null +++ b/meetings/2023-04-19/index.html @@ -0,0 +1,1919 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-04-19 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-04-19

+

Agenda

+
    +
  • Review action items from last meeting
  • +
  • Priorities
  • +
  • Internet Identity Workshop (IIW) updates
  • +
  • Call for code from the community
  • +
  • Open discussion and next steps
  • +
+ + +

Action Items

+
    +
  • Document process for creating a task force - pull request
  • +
+

Meeting Minutes

+
    +
  • Review action items from last meeting
      +
    • Tracy to rename the architecture-task-force GitHub repo to architecture-sig - completed
    • +
    • Jenn to rename the meeting invite for the Outside Architecture Special Interest Group to reflect that the name should be the Architecture SIG - completed
    • +
    • Jenn to add Stavros to the TAC meeting invite - completed
    • +
    • Jenn to add Jeremie to the TAC meeting invite - completed
    • +
    • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs - completed
    • +
    +
  • +
  • Priorities
      +
    • Projects
        +
      • Pipeline of projects
      • +
      • Getting a method of tracking and accessing projects
      • +
      • Rule book / guide on the evaluation process and criteria for new projects
      • +
      • Technical Focus
          +
        • Cloud based, edge based, and hybrid wallets
        • +
        • Common components for wallets
        • +
        • Specific components for money, identity, and object wallets
        • +
        +
      • +
      +
    • +
    • Collaboration between OWF and European Commission
        +
      • Tracking changes in the next European Digital Identity Wallet Architecture and Reference Framework (ARF) and making sure it lines up with OWF thinking
      • +
      • Maintaining dialog and exploring alignment
      • +
      +
    • +
    +
  • +
  • Internet Identity Workshop (IIW) updates
      +
    • Topics on digital wallets, credentials, and interoperability
    • +
    • Sessions on EUDI and the ARF
    • +
    • A number of OpenWallet topics will be discussed on day 2 and 3
    • +
    • Discussions about the Linux Foundation Trust umbrella
    • +
    +
  • +
  • Call for code from the community
      +
    • Completing the assessment framework may allow people to better understand what type of projects should be considered for contribution
    • +
    +
  • +
  • Next steps
      +
    • Next meeting is May 3, 2023
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-05-03/index.html b/meetings/2023-05-03/index.html new file mode 100644 index 00000000..bdc5091b --- /dev/null +++ b/meetings/2023-05-03/index.html @@ -0,0 +1,1926 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-05-03 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-05-03

+

Agenda

+
    +
  • Review action items from last meeting
  • +
  • Welcome new TAC member
  • +
  • Task Force Proposal
  • +
  • Assessment Framework - How do we want to assess incoming projects?
  • +
  • Call for code from the community
  • +
  • Open discussion and next steps
  • +
+ + +

Action Items

+
    +
  • Update Task Force process to include information on optional mailing lists and capturing meeting notes -- commit -- completed
  • +
  • Create process for Special Interest Groups similar to Task Force process and cross link the two processes together
  • +
+

Meeting Minutes

+ + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-05-17/index.html b/meetings/2023-05-17/index.html new file mode 100644 index 00000000..e0510883 --- /dev/null +++ b/meetings/2023-05-17/index.html @@ -0,0 +1,1960 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-05-17 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-05-17

+

Agenda

+ + + +

TAC Voting Members

+
    +
  • Jeremie Miller
  • +
  • Marie Austenaa (Trevor Crooks attended and voted in Marie's place)
  • +
  • Stavros Kounis
  • +
  • Tracy Kuhrt
  • +
  • Troy Ronda
  • +
  • Wenjing Chu
  • +
+

Action Items

+ +

Meeting Minutes

+ + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-05-31/index.html b/meetings/2023-05-31/index.html new file mode 100644 index 00000000..a436d0b8 --- /dev/null +++ b/meetings/2023-05-31/index.html @@ -0,0 +1,1969 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-05-31 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-05-31

+

Agenda

+ + + +

TAC Voting Members

+
    +
  • Jeremie Miller
  • +
  • Marie Austenaa
  • +
  • Stavros Kounis
  • +
  • Tracy Kuhrt
  • +
  • Troy Ronda
  • +
  • Wenjing Chu
  • +
+

Action Items

+ +

Meeting Minutes

+
    +
  • +

    Review action items from last meeting

    + +
  • +
  • +

    Update on TAC alternates

    +
      +
    • +

      The Governing Board agreed to modify the Charter to include the following language:

      +
      +

      Updated Language

      +

      5.c) TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project and others in the general public interested in the OpenWallet Foundation. The TAC may decide whether to allow named representatives (one per voting member) to attend as an alternate.

      +
      +
    • +
    +
  • +
  • +

    OID4VC Due Diligence Task Force

    +
      +
    • Unanimously approved by the present TAC voting members.
    • +
    +
  • +
  • +

    Credential Format Comparison SIG

    +
      +
    • Unanimously approved by the present TAC voting members.
    • +
    +
  • +
  • +

    Call for code from the community

    +
  • +
  • +

    Next steps

    +
      +
    • Next meeting is June 14, 2023
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-06-14/index.html b/meetings/2023-06-14/index.html new file mode 100644 index 00000000..0d6f56a7 --- /dev/null +++ b/meetings/2023-06-14/index.html @@ -0,0 +1,1981 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-06-14 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-06-14

+

Agenda

+ + + +

TAC Voting Members

+
    +
  • Jeremie Miller
  • +
  • Marie Austenaa
  • +
  • Stavros Kounis
  • +
  • Tracy Kuhrt
  • +
  • Troy Ronda
  • +
  • Wenjing Chu
  • +
+

Action Items

+ +

Meeting Minutes

+
    +
  • +

    Announcements

    + +
  • +
  • +

    Review action items from last meeting

    + +
  • +
  • +

    TAC Alternates Policy

    +
      +
    • RESOLVED: That the TAC Alternates Policy is hereby confirmed, approved, and adopted.
        +
      • Unanimously approved by the present TAC voting members.
      • +
      +
    • +
    +
  • +
  • +

    Call for code from the community

    +
      +
    • A question was asked whether we were tracking a wishlist for potential projects
        +
      • In general, we are looking for projects that fit with the vision of the OpenWallet Foundation. Those that are focused on wallet engine related to identity, money, and objects
      • +
      • We previously were capturing potential code projects using this Google sheet
      • +
      +
    • +
    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
    • +
    +
  • +
  • +

    Open discussion and next steps

    + +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-06-28/index.html b/meetings/2023-06-28/index.html new file mode 100644 index 00000000..0db85019 --- /dev/null +++ b/meetings/2023-06-28/index.html @@ -0,0 +1,1968 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-06-28 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-06-28

+

Agenda

+ + + +

TAC Voting Members

+
    +
  • Jeremie Miller
  • +
  • Marie Austenaa
  • +
  • Stavros Kounis
  • +
  • Tracy Kuhrt
  • +
  • Troy Ronda
  • +
  • Wenjing Chu
  • +
+

Action Items

+ +

Meeting Minutes

+
    +
  • +

    Announcements

    +
      +
    • Credential Format Comparison SIG will meet on Wednesdays at 4pm CEST on alternate weeks to the TAC. Kickoff meeting planned for July 7th.
    • +
    • OID4VC Due Diligence task force will meet weekly on Wednesdays at 5pm CEST.
    • +
    • Pete Cooling was introduced as Visa's TAC voting representative.
    • +
    +
  • +
  • +

    Review action items from last meeting

    + +
  • +
  • +

    Vice chair seat and responsibilities

    +
      +
    • RESOLVED: That the Vice Chair Seat and Responsibilities is hereby confirmed, approved, and adopted.
        +
      • Unanimously approved by the present TAC voting members.
      • +
      • Voting schedule
          +
        • Call for nominations: June 28
        • +
        • End of call for nominations: July 5, Noon PT
        • +
        • A ballot will be distributed on: July 5 by end of day PT
        • +
        • The election will be completed on: July 11, Noon PT
        • +
        • Election results are announced at the July 12 meeting
        • +
        +
      • +
      • If you would like to submit your nomination for TAC Vice Chair, please create an issue at https://github.com/openwallet-foundation/tac/issues
          +
        • Title of issue: [NOMINATION]: 2023 Vice Chair - Name
        • +
        • Include a short bio, outline your qualifications, and provide a statement explaining why you would be a good choice for the seat
        • +
        +
      • +
      +
    • +
    +
  • +
  • +

    Wallets and personal data stores

    + +
  • +
  • +

    Call for code from the community

    +
      +
    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
    • +
    +
  • +
  • +

    Open discussion and next steps

    +
      +
    • Next meeting is July 12, 2023
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/2023-07-12/index.html b/meetings/2023-07-12/index.html new file mode 100644 index 00000000..70cc295d --- /dev/null +++ b/meetings/2023-07-12/index.html @@ -0,0 +1,1977 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 2023-07-12 - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +
+

Reminder

+

These meetings are covered by the Antitrust Policy and the Code of Conduct.

+
+

2023-07-12

+

Agenda

+ + + +

TAC Voting Members

+
    +
  • Jeremie Miller
  • +
  • Pete Cooling
  • +
  • Stavros Kounis
  • +
  • Tracy Kuhrt
  • +
  • Troy Ronda
  • +
  • Wenjing Chu
  • +
+

Action Items

+ +

Meeting Minutes

+
    +
  • +

    Announcements

    +
      +
    • Credential Format Comparison SIG will meet on Wednesdays at 4pm CEST on alternate weeks to the TAC +
    • +
    • OID4VC Due Diligence task force will meet weekly on Wednesdays at 5pm CEST
    • +
    • Architecture SIG meets weekly on Mondays at 11am US/Pacific
    • +
    • Invitation to fully remote ISO/IEC JTC 1/SC 17 18013-7 Interoperability Event
    • +
    • For Associate non-profit members of the OpenWallet Foundation: voting is now open to select the Associate Representative for the Governing Board. Please email operations@openwallet.foundation if you have any questions about your organization's participation in this vote.
    • +
    +
  • +
  • +

    Review action items from last meeting

    + +
  • +
  • +

    Vice Chair

    +
      +
    • RESOLVED: That the voting schedule for vice chair is hereby revised, approved, and adopted as specified.
        +
      • Revised voting schedule
          +
        • Call for nominations: July 12
        • +
        • End of call for nominations: August 2, Noon PT
        • +
        • A ballot will be distributed on: August 2 by end of day PT
        • +
        • The election will be completed on: August 8, Noon PT
        • +
        • Election results are announced at the August 9 meeting
        • +
        +
      • +
      • Unanimously approved by the present TAC voting members.
      • +
      +
    • +
    +
  • +
  • +

    Farmworker Wallet OS project proposal

    +
      +
    • Video shared on Discord
    • +
    • Question asking for clarification of the scope of the contribution
    • +
    • Concerns raised about the licensing terms of the generated output from Mendix
        +
      • Mendix does not make any intellectual property claims on the output
      • +
      +
    • +
    • Question raised about the proposed license that will need to be run past LF legal and the Governing Board
    • +
    • Need to consider naming of the repos to ensure that it allows people to determine that they are part of the same project
    • +
    • Question raised about the difference between the Aries SDK proposed to be part of this project and the one in Hyperledger
        +
      • The one in this project is a wrapper around the SDK in Hyperledger that can be used by Mendix developers
      • +
      +
    • +
    • Continue conversation on the pull request
    • +
    +
  • +
  • +

    Call for code from the community

    +
      +
    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
    • +
    +
  • +
  • +

    Open discussion and next steps

    +
      +
    • Next meeting is July 26, 2023
    • +
    +
  • +
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/YYYY-mm-dd/index.html b/meetings/YYYY-mm-dd/index.html new file mode 100644 index 00000000..5bfe9616 --- /dev/null +++ b/meetings/YYYY-mm-dd/index.html @@ -0,0 +1,1687 @@ + + + + + + + + + + + + + + + + + + + + + + YYYY mm dd - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + +
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/meetings/index.html b/meetings/index.html new file mode 100644 index 00000000..18294eb1 --- /dev/null +++ b/meetings/index.html @@ -0,0 +1,1730 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

TAC Meetings

+

TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project, and others in the general public interested in the OpenWallet Foundation.

+

The meetings will be held bi-weekly starting Wednesday, March 8, 2023 at 7:00am PT.

+ + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/plugins/social/layouts/default.yml b/plugins/social/layouts/default.yml new file mode 100644 index 00000000..d67e3186 --- /dev/null +++ b/plugins/social/layouts/default.yml @@ -0,0 +1,221 @@ +# Copyright (c) 2016-2023 Martin Donath + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# ----------------------------------------------------------------------------- +# Configuration +# ----------------------------------------------------------------------------- + +# Definitions +definitions: + + # Background image + - &background_image >- + {{ layout.background_image or "" }} + + # Background color (default: indigo) + - &background_color >- + {%- if layout.background_color -%} + {{ layout.background_color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ef5552", + "pink": "#e92063", + "purple": "#ab47bd", + "deep-purple": "#7e56c2", + "indigo": "#4051b5", + "blue": "#2094f3", + "light-blue": "#02a6f2", + "cyan": "#00bdd6", + "teal": "#009485", + "green": "#4cae4f", + "light-green": "#8bc34b", + "lime": "#cbdc38", + "yellow": "#ffec3d", + "amber": "#ffc105", + "orange": "#ffa724", + "deep-orange": "#ff6e42", + "brown": "#795649", + "grey": "#757575", + "blue-grey": "#546d78", + "black": "#000000", + "white": "#ffffff" + }[primary] or "#4051b5" }} + {%- endif -%} + + # Text color (default: white) + - &color >- + {%- if layout.color -%} + {{ layout.color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ffffff", + "pink": "#ffffff", + "purple": "#ffffff", + "deep-purple": "#ffffff", + "indigo": "#ffffff", + "blue": "#ffffff", + "light-blue": "#ffffff", + "cyan": "#ffffff", + "teal": "#ffffff", + "green": "#ffffff", + "light-green": "#ffffff", + "lime": "#000000", + "yellow": "#000000", + "amber": "#000000", + "orange": "#000000", + "deep-orange": "#ffffff", + "brown": "#ffffff", + "grey": "#ffffff", + "blue-grey": "#ffffff", + "black": "#ffffff", + "white": "#000000" + }[primary] or "#ffffff" }} + {%- endif -%} + + # Font family (default: Roboto) + - &font_family >- + {%- if layout.font_family -%} + {{ layout.font_family }} + {%- elif config.theme.font != false -%} + {{ config.theme.font.get("text", "Roboto") }} + {%- else -%} + Roboto + {%- endif -%} + + # Site name + - &site_name >- + {{ config.site_name }} + + # Page title + - &page_title >- + {{ page.meta.get("title", page.title) }} + + # Page title with site name + - &page_title_with_site_name >- + {%- if not page.is_homepage -%} + {{ page.meta.get("title", page.title) }} - {{ config.site_name }} + {%- else -%} + {{ page.meta.get("title", page.title) }} + {%- endif -%} + + # Page description + - &page_description >- + {{ page.meta.get("description", config.site_description) or "" }} + + # Logo + - &logo >- + {%- if config.theme.logo -%} + {{ config.docs_dir }}/{{ config.theme.logo }} + {%- endif -%} + + # Logo (icon) + - &logo_icon >- + {{ config.theme.icon.logo or "" }} + +# Meta tags +tags: + + # Open Graph + og:type: website + og:title: *page_title_with_site_name + og:description: *page_description + og:image: "{{ image.url }}" + og:image:type: "{{ image.type }}" + og:image:width: "{{ image.width }}" + og:image:height: "{{ image.height }}" + og:url: "{{ page.canonical_url }}" + + # Twitter + twitter:card: summary_large_image + twitter.title: *page_title_with_site_name + twitter:description: *page_description + twitter:image: "{{ image.url }}" + +# ----------------------------------------------------------------------------- +# Specification +# ----------------------------------------------------------------------------- + +# Card size and layers +size: { width: 1200, height: 630 } +layers: + + # Background + - background: + image: *background_image + color: *background_color + + # Logo + - size: { width: 144, height: 144 } + offset: { x: 992, y: 64 } + background: + image: *logo + icon: + value: *logo_icon + color: *color + + # Site name + - size: { width: 832, height: 42 } + offset: { x: 64, y: 64 } + typography: + content: *site_name + color: *color + font: + family: *font_family + style: Bold + + # Page title + - size: { width: 832, height: 310 } + offset: { x: 62, y: 160 } + typography: + content: *page_title + align: start + color: *color + line: + amount: 3 + height: 1.25 + font: + family: *font_family + style: Bold + + # Page description + - size: { width: 832, height: 64 } + offset: { x: 64, y: 512 } + typography: + content: *page_description + align: start + color: *color + line: + amount: 2 + height: 1.5 + font: + family: *font_family + style: Regular diff --git a/plugins/social/layouts/default/accent.yml b/plugins/social/layouts/default/accent.yml new file mode 100644 index 00000000..99684c74 --- /dev/null +++ b/plugins/social/layouts/default/accent.yml @@ -0,0 +1,211 @@ +# Copyright (c) 2016-2023 Martin Donath + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# ----------------------------------------------------------------------------- +# Configuration +# ----------------------------------------------------------------------------- + +# Definitions +definitions: + + # Background image + - &background_image >- + {{ layout.background_image or "" }} + + # Background color (default: indigo) + - &background_color >- + {%- if layout.background_color -%} + {{ layout.background_color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set accent = palette.get("accent", "indigo") -%} + {%- set accent = accent.replace(" ", "-") -%} + {{ { + "red": "#ff1a47", + "pink": "#f50056", + "purple": "#df41fb", + "deep-purple": "#7c4dff", + "indigo": "#526cfe", + "blue": "#4287ff", + "light-blue": "#0091eb", + "cyan": "#00bad6", + "teal": "#00bda4", + "green": "#00c753", + "light-green": "#63de17", + "lime": "#b0eb00", + "yellow": "#ffd500", + "amber": "#ffaa00", + "orange": "#ff9100", + "deep-orange": "#ff6e42" + }[accent] or "#4051b5" }} + {%- endif -%} + + # Text color (default: white) + - &color >- + {%- if layout.color -%} + {{ layout.color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set accent = palette.get("accent", "indigo") -%} + {%- set accent = accent.replace(" ", "-") -%} + {{ { + "red": "#ffffff", + "pink": "#ffffff", + "purple": "#ffffff", + "deep-purple": "#ffffff", + "indigo": "#ffffff", + "blue": "#ffffff", + "light-blue": "#ffffff", + "cyan": "#ffffff", + "teal": "#ffffff", + "green": "#ffffff", + "light-green": "#ffffff", + "lime": "#000000", + "yellow": "#000000", + "amber": "#000000", + "orange": "#000000", + "deep-orange": "#ffffff" + }[accent] or "#ffffff" }} + {%- endif -%} + + # Font family (default: Roboto) + - &font_family >- + {%- if layout.font_family -%} + {{ layout.font_family }} + {%- elif config.theme.font != false -%} + {{ config.theme.font.get("text", "Roboto") }} + {%- else -%} + Roboto + {%- endif -%} + + # Site name + - &site_name >- + {{ config.site_name }} + + # Page title + - &page_title >- + {{ page.meta.get("title", page.title) }} + + # Page title with site name + - &page_title_with_site_name >- + {%- if not page.is_homepage -%} + {{ page.meta.get("title", page.title) }} - {{ config.site_name }} + {%- else -%} + {{ page.meta.get("title", page.title) }} + {%- endif -%} + + # Page description + - &page_description >- + {{ page.meta.get("description", config.site_description) or "" }} + + # Logo + - &logo >- + {%- if config.theme.logo -%} + {{ config.docs_dir }}/{{ config.theme.logo }} + {%- endif -%} + + # Logo (icon) + - &logo_icon >- + {{ config.theme.icon.logo or "" }} + +# Meta tags +tags: + + # Open Graph + og:type: website + og:title: *page_title_with_site_name + og:description: *page_description + og:image: "{{ image.url }}" + og:image:type: "{{ image.type }}" + og:image:width: "{{ image.width }}" + og:image:height: "{{ image.height }}" + og:url: "{{ page.canonical_url }}" + + # Twitter + twitter:card: summary_large_image + twitter.title: *page_title_with_site_name + twitter:description: *page_description + twitter:image: "{{ image.url }}" + +# ----------------------------------------------------------------------------- +# Specification +# ----------------------------------------------------------------------------- + +# Card size and layers +size: { width: 1200, height: 630 } +layers: + + # Background + - background: + image: *background_image + color: *background_color + + # Logo + - size: { width: 144, height: 144 } + offset: { x: 992, y: 64 } + background: + image: *logo + icon: + value: *logo_icon + color: *color + + # Site name + - size: { width: 832, height: 42 } + offset: { x: 64, y: 64 } + typography: + content: *site_name + color: *color + font: + family: *font_family + style: Bold + + # Page title + - size: { width: 832, height: 310 } + offset: { x: 62, y: 160 } + typography: + content: *page_title + align: start + color: *color + line: + amount: 3 + height: 1.25 + font: + family: *font_family + style: Bold + + # Page description + - size: { width: 832, height: 64 } + offset: { x: 64, y: 512 } + typography: + content: *page_description + align: start + color: *color + line: + amount: 2 + height: 1.5 + font: + family: *font_family + style: Regular diff --git a/plugins/social/layouts/default/invert.yml b/plugins/social/layouts/default/invert.yml new file mode 100644 index 00000000..eddc02ec --- /dev/null +++ b/plugins/social/layouts/default/invert.yml @@ -0,0 +1,221 @@ +# Copyright (c) 2016-2023 Martin Donath + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# ----------------------------------------------------------------------------- +# Configuration +# ----------------------------------------------------------------------------- + +# Definitions +definitions: + + # Background image + - &background_image >- + {{ layout.background_image or "" }} + + # Background color (default: white) + - &background_color >- + {%- if layout.background_color -%} + {{ layout.background_color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ffffff", + "pink": "#ffffff", + "purple": "#ffffff", + "deep-purple": "#ffffff", + "indigo": "#ffffff", + "blue": "#ffffff", + "light-blue": "#ffffff", + "cyan": "#ffffff", + "teal": "#ffffff", + "green": "#ffffff", + "light-green": "#ffffff", + "lime": "#000000", + "yellow": "#000000", + "amber": "#000000", + "orange": "#000000", + "deep-orange": "#ffffff", + "brown": "#ffffff", + "grey": "#ffffff", + "blue-grey": "#ffffff", + "black": "#ffffff", + "white": "#000000" + }[primary] or "#ffffff" }} + {%- endif -%} + + # Text color (default: indigo) + - &color >- + {%- if layout.color -%} + {{ layout.color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ef5552", + "pink": "#e92063", + "purple": "#ab47bd", + "deep-purple": "#7e56c2", + "indigo": "#4051b5", + "blue": "#2094f3", + "light-blue": "#02a6f2", + "cyan": "#00bdd6", + "teal": "#009485", + "green": "#4cae4f", + "light-green": "#8bc34b", + "lime": "#cbdc38", + "yellow": "#ffec3d", + "amber": "#ffc105", + "orange": "#ffa724", + "deep-orange": "#ff6e42", + "brown": "#795649", + "grey": "#757575", + "blue-grey": "#546d78", + "black": "#000000", + "white": "#ffffff" + }[primary] or "#4051b5" }} + {%- endif -%} + + # Font family (default: Roboto) + - &font_family >- + {%- if layout.font_family -%} + {{ layout.font_family }} + {%- elif config.theme.font != false -%} + {{ config.theme.font.get("text", "Roboto") }} + {%- else -%} + Roboto + {%- endif -%} + + # Site name + - &site_name >- + {{ config.site_name }} + + # Page title + - &page_title >- + {{ page.meta.get("title", page.title) }} + + # Page title with site name + - &page_title_with_site_name >- + {%- if not page.is_homepage -%} + {{ page.meta.get("title", page.title) }} - {{ config.site_name }} + {%- else -%} + {{ page.meta.get("title", page.title) }} + {%- endif -%} + + # Page description + - &page_description >- + {{ page.meta.get("description", config.site_description) or "" }} + + # Logo + - &logo >- + {%- if config.theme.logo -%} + {{ config.docs_dir }}/{{ config.theme.logo }} + {%- endif -%} + + # Logo (icon) + - &logo_icon >- + {{ config.theme.icon.logo or "" }} + +# Meta tags +tags: + + # Open Graph + og:type: website + og:title: *page_title_with_site_name + og:description: *page_description + og:image: "{{ image.url }}" + og:image:type: "{{ image.type }}" + og:image:width: "{{ image.width }}" + og:image:height: "{{ image.height }}" + og:url: "{{ page.canonical_url }}" + + # Twitter + twitter:card: summary_large_image + twitter.title: *page_title_with_site_name + twitter:description: *page_description + twitter:image: "{{ image.url }}" + +# ----------------------------------------------------------------------------- +# Specification +# ----------------------------------------------------------------------------- + +# Card size and layers +size: { width: 1200, height: 630 } +layers: + + # Background + - background: + image: *background_image + color: *background_color + + # Logo + - size: { width: 144, height: 144 } + offset: { x: 992, y: 64 } + background: + image: *logo + icon: + value: *logo_icon + color: *color + + # Site name + - size: { width: 832, height: 42 } + offset: { x: 64, y: 64 } + typography: + content: *site_name + color: *color + font: + family: *font_family + style: Bold + + # Page title + - size: { width: 832, height: 310 } + offset: { x: 62, y: 160 } + typography: + content: *page_title + align: start + color: *color + line: + amount: 3 + height: 1.25 + font: + family: *font_family + style: Bold + + # Page description + - size: { width: 832, height: 64 } + offset: { x: 64, y: 512 } + typography: + content: *page_description + align: start + color: *color + line: + amount: 2 + height: 1.5 + font: + family: *font_family + style: Regular diff --git a/plugins/social/layouts/default/only/image.yml b/plugins/social/layouts/default/only/image.yml new file mode 100644 index 00000000..2cf062cf --- /dev/null +++ b/plugins/social/layouts/default/only/image.yml @@ -0,0 +1,73 @@ +# Copyright (c) 2016-2023 Martin Donath + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# ----------------------------------------------------------------------------- +# Configuration +# ----------------------------------------------------------------------------- + +# Definitions +definitions: + + # Background image + - &background_image >- + {{ layout.background_image }} + + # Page title with site name + - &page_title_with_site_name >- + {%- if not page.is_homepage -%} + {{ page.meta.get("title", page.title) }} - {{ config.site_name }} + {%- else -%} + {{ page.meta.get("title", page.title) }} + {%- endif -%} + + # Page description + - &page_description >- + {{ page.meta.get("description", config.site_description) or "" }} + +# Meta tags +tags: + + # Open Graph + og:type: website + og:title: *page_title_with_site_name + og:description: *page_description + og:image: "{{ image.url }}" + og:image:type: "{{ image.type }}" + og:image:width: "{{ image.width }}" + og:image:height: "{{ image.height }}" + og:url: "{{ page.canonical_url }}" + + # Twitter + twitter:card: summary_large_image + twitter.title: *page_title_with_site_name + twitter:description: *page_description + twitter:image: "{{ image.url }}" + +# ----------------------------------------------------------------------------- +# Specification +# ----------------------------------------------------------------------------- + +# Card size and layers +size: { width: 1200, height: 630 } +layers: + + # Background + - background: + image: *background_image diff --git a/plugins/social/layouts/default/variant.yml b/plugins/social/layouts/default/variant.yml new file mode 100644 index 00000000..158d2e8e --- /dev/null +++ b/plugins/social/layouts/default/variant.yml @@ -0,0 +1,232 @@ +# Copyright (c) 2016-2023 Martin Donath + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# ----------------------------------------------------------------------------- +# Configuration +# ----------------------------------------------------------------------------- + +# Definitions +definitions: + + # Background image + - &background_image >- + {{ layout.background_image or "" }} + + # Background color (default: indigo) + - &background_color >- + {%- if layout.background_color -%} + {{ layout.background_color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ef5552", + "pink": "#e92063", + "purple": "#ab47bd", + "deep-purple": "#7e56c2", + "indigo": "#4051b5", + "blue": "#2094f3", + "light-blue": "#02a6f2", + "cyan": "#00bdd6", + "teal": "#009485", + "green": "#4cae4f", + "light-green": "#8bc34b", + "lime": "#cbdc38", + "yellow": "#ffec3d", + "amber": "#ffc105", + "orange": "#ffa724", + "deep-orange": "#ff6e42", + "brown": "#795649", + "grey": "#757575", + "blue-grey": "#546d78", + "black": "#000000", + "white": "#ffffff" + }[primary] or "#4051b5" }} + {%- endif -%} + + # Text color (default: white) + - &color >- + {%- if layout.color -%} + {{ layout.color }} + {%- else -%} + {%- set palette = config.theme.palette or {} -%} + {%- if not palette is mapping -%} + {%- set palette = palette | first -%} + {%- endif -%} + {%- set primary = palette.get("primary", "indigo") -%} + {%- set primary = primary.replace(" ", "-") -%} + {{ { + "red": "#ffffff", + "pink": "#ffffff", + "purple": "#ffffff", + "deep-purple": "#ffffff", + "indigo": "#ffffff", + "blue": "#ffffff", + "light-blue": "#ffffff", + "cyan": "#ffffff", + "teal": "#ffffff", + "green": "#ffffff", + "light-green": "#ffffff", + "lime": "#000000", + "yellow": "#000000", + "amber": "#000000", + "orange": "#000000", + "deep-orange": "#ffffff", + "brown": "#ffffff", + "grey": "#ffffff", + "blue-grey": "#ffffff", + "black": "#ffffff", + "white": "#000000" + }[primary] or "#ffffff" }} + {%- endif -%} + + # Font family (default: Roboto) + - &font_family >- + {%- if layout.font_family -%} + {{ layout.font_family }} + {%- elif config.theme.font != false -%} + {{ config.theme.font.get("text", "Roboto") }} + {%- else -%} + Roboto + {%- endif -%} + + # Site name + - &site_name >- + {{ config.site_name }} + + # Page title + - &page_title >- + {{ page.meta.get("title", page.title) }} + + # Page title with site name + - &page_title_with_site_name >- + {%- if not page.is_homepage -%} + {{ page.meta.get("title", page.title) }} - {{ config.site_name }} + {%- else -%} + {{ page.meta.get("title", page.title) }} + {%- endif -%} + + # Page description + - &page_description >- + {{ page.meta.get("description", config.site_description) or "" }} + + # Page icon + - &page_icon >- + {{ page.meta.icon or "" }} + + # Logo + - &logo >- + {%- if config.theme.logo -%} + {{ config.docs_dir }}/{{ config.theme.logo }} + {%- endif -%} + + # Logo (icon) + - &logo_icon >- + {{ config.theme.icon.logo or "" }} + +# Meta tags +tags: + + # Open Graph + og:type: website + og:title: *page_title_with_site_name + og:description: *page_description + og:image: "{{ image.url }}" + og:image:type: "{{ image.type }}" + og:image:width: "{{ image.width }}" + og:image:height: "{{ image.height }}" + og:url: "{{ page.canonical_url }}" + + # Twitter + twitter:card: summary_large_image + twitter.title: *page_title_with_site_name + twitter:description: *page_description + twitter:image: "{{ image.url }}" + +# ----------------------------------------------------------------------------- +# Specification +# ----------------------------------------------------------------------------- + +# Card size and layers +size: { width: 1200, height: 630 } +layers: + + # Background + - background: + image: *background_image + color: *background_color + + # Page icon + - size: { width: 630, height: 630 } + offset: { x: 800, y: 0 } + icon: + value: *page_icon + color: "#00000033" + + # Logo + - size: { width: 64, height: 64 } + offset: { x: 64, y: 64 } + background: + image: *logo + icon: + value: *logo_icon + color: *color + + # Site name + - size: { width: 768, height: 42 } + offset: { x: 160, y: 74 } + typography: + content: *site_name + color: *color + font: + family: *font_family + style: Bold + + # Page title + - size: { width: 864, height: 256 } + offset: { x: 62, y: 192 } + typography: + content: *page_title + align: start + color: *color + line: + amount: 3 + height: 1.25 + font: + family: *font_family + style: Bold + + # Page description + - size: { width: 864, height: 64 } + offset: { x: 64, y: 512 } + typography: + content: *page_description + align: start + color: *color + line: + amount: 2 + height: 1.5 + font: + family: *font_family + style: Regular diff --git a/projects/index.html b/projects/index.html new file mode 100644 index 00000000..06da3c6f --- /dev/null +++ b/projects/index.html @@ -0,0 +1,1771 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Projects - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + +

Projects

+

Projects in the OpenWallet Foundation follow the project lifecycle. This page lists the active projects within the OpenWallet Foundation and their current lifecycle stage.

+

Active Projects

+ + + + + + + + + + + + + + + + + + + + +
Approval DateProject NameLifecycle Stage
2023-May-17SD-JWT Kotlin LibraryLab
2023-May-17SD-JWT Python Reference ImplementationLab
+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 00000000..c0827687 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"],"fields":{"title":{"boost":1000.0},"text":{"boost":1.0},"tags":{"boost":1000000.0}}},"docs":[{"location":"","title":"Home","text":"

Welcome to the OpenWallet Foundation's (OWF) Technical Advisory Council (TAC) website. Here you will find:

  • What is the TAC

    Learn more about the Technical Advisory Council's role, responsibilities, and voting members

  • Governing Documents

    Review the OpenWallet Foundation TAC Governing Documents

  • TAC Meetings

    See meeting invite details and meeting notes from past meetings

  • Projects

    OpenWallet Foundation Projects

  • Special Interest Groups

    OpenWallet Foundation Special Interest Groups (SIGs)

  • Task Forces

    OpenWallet Foundation Task Forces

"},{"location":"projects/","title":"Projects","text":"

Projects in the OpenWallet Foundation follow the project lifecycle. This page lists the active projects within the OpenWallet Foundation and their current lifecycle stage.

"},{"location":"projects/#active-projects","title":"Active Projects","text":"Approval Date Project Name Lifecycle Stage 2023-May-17 SD-JWT Kotlin Library Lab 2023-May-17 SD-JWT Python Reference Implementation Lab"},{"location":"SIGs/","title":"Special Interest Groups (SIGs)","text":"

A special interest group (SIG) under the Technical Advisory Council (TAC) is a group with a shared interest in advancing a specific area of knowledge, learning, or technology related to the mission of the OpenWallet Foundation where members cooperate to affect or to produce solutions within their particular field. Unlike a task force, SIGs are typically long running and may or may not produce any deliverables. A SIG can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

Tip

If you would like to propose a Special Interest Group, please see the SIG proposal process.

"},{"location":"SIGs/#active-sigs","title":"Active SIGs","text":"
  • Architecture
  • Credential Format Comparison
"},{"location":"SIGs/architecture/","title":"Architecture Special Interest Group (SIG)","text":"

This SIG is focused on conversations related to the architecture of digital wallet engines.

This SIG was accepted by the TAC on April 5, 2023.

"},{"location":"SIGs/architecture/#participating","title":"Participating","text":"

This SIG is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

"},{"location":"SIGs/architecture/#meetings","title":"Meetings","text":"

The architecture SIG meets weekly on Mondays at 11:00 AM US/Pacific time. For details, see architecture SIG meeting details. For past notes and recordings, see the architecture SIG wiki.

"},{"location":"SIGs/architecture/#discord","title":"Discord","text":"

Please join the OpenWallet Foundation Discord and participate in the discussion in the #architecture-sig channel.

"},{"location":"SIGs/credential-format-comparison/","title":"Credential Format Comparison Special Interest Group (SIG)","text":"

This SIG is dedicated to maintaining information about available credential formats for the benefit of OWF projects and the wider community. The topic is more complex than one might assume on first sight, since there are more than 14 formats for representing digital credentials and most of those formats can be combined with different signature algorithms, ways to represent cryptographic keys (with alone more than a hundred DID methods), status management methods, trust management methods and so on.

There is pre-existing work started at Internet Identity Workshop (IIW 34, Spring 2022) and extended and augmented during Rebooting the Web of Trust (RWOT-XI, The Hague, Sept 2022).

It consists of a \u201ccredential format comparison matrix\u201d, containing information about the technical options in the different dimensions (formats, signature algorithms, \u2026) as well as known credential profiles, i.e. concrete combinations used in implementations and an article explaining the \u201cmatrix\u201d.

  • Article: https://github.com/WebOfTrustInfo/rwot11-the-hague/blob/master/final-documents/credential-profile-comparison.pdf
  • Source Code: https://github.com/openwallet-foundation/credential-format-comparison-sig
  • Rendered Matrix: https://openwallet-foundation.github.io/credential-format-comparison-sig/#/

This SIG was accepted by the TAC on May 31, 2023. See Credential Format Comparison SIG Proposal for more details.

"},{"location":"SIGs/credential-format-comparison/#participating","title":"Participating","text":"

This SIG is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

If you are interested in participating, please join the OpenWallet Foundation Discord and participate in the discussion in the #credential-format-comparison-sig channel.

"},{"location":"governance/","title":"Governing Documents","text":"

The following are the governing documents used by the OpenWallet Foundation's Technical Advisory Council.

"},{"location":"governance/#code-of-conduct","title":"Code of Conduct","text":"
  • define clear expectations for behavior
  • specify what happens when those behaviors are not met
  • process for reporting code of conduct violations
"},{"location":"governance/#roles-and-responsibilities","title":"Roles and Responsibilities","text":"
  • roles - different ways that people may participate within the technical community
  • responsibilities - activities and tasks that are expected for each of those roles
"},{"location":"governance/#elections","title":"Elections","text":"
  • what elections exist
  • when are elections held
  • what is the voting process
  • what happens when a vacancy occurs
"},{"location":"governance/#project-lifecycle","title":"Project Lifecycle","text":"
  • stages that a project will go through during the life of a project
  • requirements for entering and exiting each stage
  • recurring processes to ensure the project is in the right lifecycle stage (see Project Annual Review Process)
"},{"location":"governance/#common-repository-structure","title":"Common Repository Structure","text":"
  • what files are required in a GitHub repository
  • what files have specific required content
  • what files are recommended in a GitHub repository
"},{"location":"governance/#maintainers-inactivity-policy","title":"Maintainers Inactivity Policy","text":"
  • the importance of removing write access from inactive maintainers
  • what is meant by an inactive maintainer, including timeframes and behaviors
  • what happens when a maintainer becomes inactive
"},{"location":"governance/#security-policy","title":"Security Policy","text":"
  • how to report a security bug
  • who is responsible for handling security issues and how those people are selected
  • what is the timeframe and process that is followed when a security bug is reported
"},{"location":"governance/#release-taxonomy","title":"Release Taxonomy","text":"
  • what release taxonomy is used by the projects
  • details on the release taxonomy
"},{"location":"governance/#repository-inactivity-policy","title":"Repository Inactivity Policy","text":"
  • the importance of archiving an inactive repository
  • what is meant by an inactive repository, including timeframes
  • what happens when a repository becomes inactive
"},{"location":"governance/alternate-policy/","title":"TAC Alternate Policy","text":"

A TAC voting member may designate an alternate for a specific meeting, and must notify the chair in advance of the meeting. The TAC voting member is responsible for ensuring that the named alternate has enough information to represent the TAC voting member in all matters that will be covered in the meeting. The named alternate will participate in any votes that occur during the meeting for which they were named an alternate, and their vote will count as if it were cast by the TAC voting member.

Warning

If a TAC voting member regularly names an alternate and

  • is a TAC Premier Sponsor Representative, then that TAC voting member should consider whether they should replace themselves with the alternate, or
  • is a TAC \"At Large\" Representative, then that TAC voting member should consider whether they should resign.
"},{"location":"governance/antitrust/","title":"Antitrust Policy","text":"

The LF Europe Antitrust Policy listed at http://lfeurope.be/policies will apply for all Collaborators in the Project.

"},{"location":"governance/archiving-inactive-repositories/","title":"Archiving Inactive Repositories","text":"

OpenWallet Foundation very much appreciates the contributions of the community; however, it is important to archive source repositories that have become inactive in order to ensure that others in the community are not using code or reporting issues on a repository that is not being maintained.

Any repository that has not had a release for 12 months or that has had no commits for 6 months may be archived.

Projects will be notified via a PR in the appropriate repository, as well as a notice in the project appropriate Discord channel and mailing list, if they exist.

Generally speaking if the project's maintainers request to keep the repository active, the request will be honored. However if the repository has a lot of out of date dependencies, particulaly ones relating to security vulnerabilites, this request may not be honored.

A request by the project's maintainers to un-archive a repository for the purposes of active contribution will be honored, unless the project is in an emeritus stage. In those cases the project lifecycle issues will need to be resolved first.

"},{"location":"governance/charter/","title":"OpenWallet Foundation Charter","text":"

Exhibit B

The OpenWallet Foundation Charter

Linux Foundation Europe

Effective January 15, 2023

  1. Mission and Scope of the OpenWallet Foundation.

    The purpose of the OpenWallet Foundation (the \u201cOWF\u201d) is to support various open source, open data and/or other open projects relating to or supporting development of digital wallets, including infrastructure and support initiatives related thereto (each such project, a \u201cTechnical Project\u201d) , in accordance with the provisions of this Charter. The governance of each Technical Project is as set forth in the charter for that Technical Project.

    The OWF aims to enable entities to transact securely, and in a privacy enhancing fashion, in- person and on-line where attributes stored in, and managed by, the wallet. The OWF will:

    • develop and maintain open source code for wallets to enable and ensure wallet interoperability,
    • advocate for the adoption of the interoperable digital wallet technology, and
    • collaborate with Standards Development Organizations (SDOs) in the development and proliferation of open standards related to digital wallets

    The OWF will not publish a publicly available wallet (including into any application stores).

    The OWF supports the Technical Projects. The OWF operates under the guidance of the Governing Board of the OWF (the \u201cGoverning Board\u201d) and Linux Foundation Europe (the \u201cLFEU\u201d) as may be consistent with Linux Foundation Europe\u2019s tax-exempt status.

    The Governing Board manages the OWF. The Governing Board may establish other committees and other working groups (collectively, and including the Technical Advisory Council, \u201cCommittees\u201d) which will report to the Governing Board.

  2. Sponsorship.

    1. The OWF will be composed of Premier, General and Associate Sponsors (each, a \u201cSponsor\u201d and, collectively, the \u201cSponsors\u201d) in Good Standing. All Sponsors must be current Sponsors of LFEU (at any level) to participate in the OWF as a Sponsor. All sponsors in the OWF, enjoy the privileges and undertake the obligations described in this Charter, as from time-to-time amended by the Governing Board, with the approval of LFEU. During the term of their sponsorship, all Participants will comply with all such policies as the LFEU Board of Directors and/or the OWF may adopt with notice to Sponsors.
    2. Premier Sponsors will be entitled to appoint a representative to the Governing Board and any Committee.
    3. General Sponsors, acting as a class, will be entitled to annually elect one representative to the Governing Board for every ten General Sponsors, up to a maximum of three total representatives, provided that there will always be at least one General Sponsor representative, even if there are less than ten General Sponsors. The Governing Board determines the General Sponsor representative election process.
    4. The Associate Sponsor category of sponsorship is limited to Associate Sponsors of LFEU. The Governing Board may set additional criteria for sponsoring the OWF as an Associate Sponsor. If the Associate Sponsor is itself a membership or participation organization, Associate Sponsorship in the OWF does not confer any privileges or rights to the members or participants of the Associate Sponsor.
    5. Sponsors will be entitled to:
      1. participate in OWF general meetings, initiatives, events and any other activities; and
      2. identify themselves as sponsors of the OWF supporting the OWF community.
  3. Governing Board

    1. The Governing Board voting members will consist of:

      1. one representative appointed by each Premier Sponsor;
      2. the TAC Representative (as defined below), or, in the absence of a chair and with the approval of the Governing Board, any active contributor to a Technical Project so designated by the TAC (such chair or designee the \u201cTAC Representative\u201d); and
      3. the elected General Sponsor representative or representatives.
    2. The Governing Board will also include nonvoting members consisting of the GAC Representative (defined in Section 4) and Associate Representative.

      1. The Associate Representative will be chosen based on their efforts and potential to advance the OWF mission. The Associate Representative will be selected by the Governing Board voting representatives through a process determined by the Governing Board.
    3. Only one Sponsor that is part of a group of Related Companies (as defined in Section 7) may appoint, or nominate for a sponsorship class election, a representative on the Governing Board. No single Sponsor, company or set of Related Companies will be entitled to: (i) appoint or nominate for sponsorship class election more than one representative for the Governing Board, or (ii) have more than two representatives on the Governing Board.

      1. The only path to two representatives from the same group of Related Companies that will be acceptable will be for one Sponsor to appoint or nominate a representative to the Governing Board and have another of its employees, or an employee of one of its Related Companies, serve as the TAC Representative on the Governing Board.
    4. Conduct of Meetings

      1. Governing Board meetings will be limited to the Governing Board representatives, the Outreach Committee Chair, invited guests and OWF staff.
      2. Governing Board meetings follow the requirements for quorum and voting outlined in this Charter. The Governing Board may decide whether to allow named representatives (one per Sponsor per Governing Board and per Committee) to attend as an alternate.
      3. The Governing Board meetings will be private unless decided otherwise by the Governing Board. The Governing Board may invite guests to participate in consideration of specific Governing Board topics (but such guests may not participate in any vote on any matter before the Governing Board).
    5. Officers

      1. The officers (\u201cOfficers\u201d) of the OWF as of the first meeting of the Governing Board will be a Chairperson (\u201cChair\u201d) and a Treasurer. Additional Officer positions may be created by the Governing Board.
      2. The Chair will preside over meetings of the Governing Board, manage any day-to-day operational decisions, and will submit minutes for Governing Board approval.
      3. The Treasurer will assist in the preparation of budgets for Governing Board approval, monitor expenses against the budget and authorize expenditures approved in the budget.
    6. The Governing Board will be responsible for overall oversight of the OWF, including:

      1. approve a budget directing the use of funds raised by the OWF from all sources of sponsorship or other revenue, including to pay for the hiring of OWF leadership and staff;
      2. vet and select a qualified leadership team to run the day-to-day management activities of the organization and evaluate the performance of the team;
      3. provide feedback and input to the OWF leadership team responsible for planning and managing the day-to-day operation of the OWF;
      4. maintain, if desired, a guiding principles document;
      5. nominate and elect Officers of the OWF;
      6. supervise and support the leadership team on OWF business and community outreach matters;
      7. work with the LFEU on any legal matters that arise;
      8. adopt and maintain policies or rules and procedures for the OWF (subject to LFEU\u2019s approval);
      9. establish advisory bodies, committees, programs or councils to resolve any particular matter or in support of the mission of the OWF and/or its Technical Projects including in support of end-users and ambassadors for the project any Technical Project;
      10. establish any OWF conformance programs for its trademarks and solicit input (including testing tools) if deemed necessary from the applicable oversight body of any Technical Project for defining and administering any programs related to conformance with such Technical Project (each, a \u201cConformance Program\u201d);
      11. publish use cases, user stories, websites and priorities to help inform the ecosystem and technical community;
      12. approve procedures for the nomination and election of any representative of the General Sponsors to the Governing Board and any Officer or other positions created by the Governing Board; and
      13. vote on all decisions or matters coming before the Governing Board.
  4. Government Advisory Council

    1. The Government Advisory Council (the \u201cGAC\u201d) will provide the OWF advice from government entities approved to participate by the Governing Board. Members of the GAC must be national governments, multinational governmental organizations and treaty organizations, or public authorities. Each may appoint one representative and one alternate representative to the GAC. There are no fees to participate in the GAC.
    2. The GAC will provide advice to OWF on issues of public policy, and especially where there may be an interaction between OWF's activities and national policies, laws or international agreements.
    3. The Governing Board may appoint a chairperson of the GAC or delegate responsibility for selecting a chairperson to the GAC. The GAC chairperson or another person chosen by the GAC chairperson will serve as the \u201cGAC Representative\u201d responsible for reporting progress back to the Governing Board and interfacing with the TAC. The GAC Representative may attend meetings of the Governing Board and TAC as a non-voting member.
  5. Technical Advisory Council

    1. The role of the TAC is to facilitate communication and collaboration among the Technical Projects. The TAC will be responsible for:

      1. maintaining an overall strategic vision for technical collaboration and coordinating collaboration among Technical Projects, including development of an overall technical vision for the community;
      2. making recommendations to the Budget Committee of resource priorities for Technical Projects;
      3. electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC\u2019s representative (the \u201cTAC Representative\u201d);
      4. creating, maintaining and amending project lifecycle procedures and processes, deciding where Technical Projects fall within that lifecycle;
      5. determining when a technical project should be admitted as a Technical Project or any Technical Project should be considered a TAC Project; and
      6. such other matters related to the technical role of the TAC as may be communicated to the TAC by the Governing Board.
    2. The voting members of the TAC consist of:

      1. one representative appointed by each Premier Sponsor;
      2. up to two \u201cat large\u201d representatives appointed by vote of the TAC; and
      3. one representative appointed by the technical oversight body (e.g., a technical steering committee) of each TAC Project (as defined herein).
    3. TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project and others in the general public interested in the OpenWallet Foundation.

    4. At the start of the OWF, \u201cTAC Projects\u201d are those Technical Projects listed as having voting representatives on the TAC on the Directed Fund\u2019s web site. Thereafter, any Technical Project can become a TAC Project through the approval of the Technical Project\u2019s technical oversight body and the TAC (by a two-third\u2019s vote). The TAC may approve and modify a project lifecycle policy that will address the incubation, archival and other stages of TAC Projects.
    5. The TAC representatives will elect a chair to preside over meetings, ensure minutes are taken and drive the TAC agenda with input from the TAC representatives.
  6. Voting

    1. Quorum for Governing Board and Committee meetings will require at least fifty percent of the voting representatives. If advance notice of the meeting has been given per normal means and timing, the Governing Board may continue to meet even if quorum is not met, but will be prevented from making any decisions at the meeting.
    2. Ideally decisions will be made based on consensus. If, however, any decision requires a vote to move forward, the representatives of the Governing Board or Committee, as applicable, will vote on a one vote per voting representative basis.
    3. Except as provided in Section 14.a. or elsewhere in this Charter, decisions by vote at a meeting will require a simple majority vote, provided quorum is met. Except as provided in Section 14.a. or elsewhere in this Charter, decisions by electronic vote without a meeting will require a majority of all voting representatives.
    4. In the event of a tied vote with respect to an action that cannot be resolved by the Governing Board, the Chair may refer the matter to the LFEU for assistance in reaching a decision. If there is a tied vote in any Committee that cannot be resolved, the matter may be referred to the Governing Board.
  7. Subsidiaries and Related Companies

    1. Definitions:

      1. \u201cSubsidiaries\u201d means any entity in which a Sponsor owns, directly or indirectly, more than fifty percent of the voting securities or participation interests of the entity in question;
      2. \u201cRelated Company\u201d means any entity which controls or is controlled by a Sponsor or which, together with a Sponsor, is under the common control of a third party, in each case where such control results from ownership, either directly or indirectly, of more than fifty percent of the voting securities or participation interests of the entity in question; and
      3. \u201cRelated Companies\u201d are entities that are each a Related Company of a Sponsor.
    2. Only the legal entity which has executed a Project Sponsorship Agreement and its Subsidiaries will be entitled to enjoy the rights and privileges of such sponsorship; provided, however, that such Sponsor and its Subsidiaries will be treated together as a single Sponsor.

    3. If a Sponsor is itself a foundation, association, consortium, open source project, membership organization, participation organization, user group or other entity that has members or sponsors, then the rights and privileges granted to such Sponsor will extend only to the employee-representatives of such Sponsor, and not to its members or sponsors, unless otherwise approved by the Governing Board in a specific case.
    4. OWF sponsorship is non-transferable, non-salable and non-assignable, except a Sponsor may transfer its current sponsorship privileges and obligations to a successor of substantially all of its business or assets, whether by merger, sale or otherwise; provided that the transferee agrees to be bound by this Charter and the Bylaws and policies required by LFEU sponsorship.
  8. Good Standing

    1. Linux Foundation Europe\u2019s Good Standing Policy is available at https://linuxfoundation.eu/policies and will apply to all Sponsors of this OWF.
  9. Trademarks

    1. Any trademarks relating to the OWF or any Technical Project, including without limitation any mark relating to any conformance program, must be transferred to and held by LFEU or an entity in LFEU\u2019s control and available for use pursuant to LFEU\u2019s trademark usage policy, available at https://linuxfoundation.eu/policies.
  10. Antitrust Guidelines

    1. All Sponsors must abide by Linux Foundation Europe\u2019s Antitrust Policy available at https://linuxfoundation.eu/policies.
    2. All Sponsors must encourage open participation from any organization able to meet the sponsorship requirements, regardless of competitive interests. Put another way, the Governing Board will not seek to exclude any Sponsor based on any criteria, requirements or reasons other than those that are reasonable and applied on a non- discriminatory basis to all Sponsors.
  11. Budget

    1. The Governing Board will approve an annual budget and never commit to spend in excess of funds raised. The budget and the purposes to which it is applied must be consistent with both (a) the non-profit and tax-exempt mission of LFEU and (b) the goals of any Technical Project.
    2. LFEU will provide the Governing Board with regular reports of spend levels against the budget. Under no circumstances will LFEU have any expectation or obligation to undertake an action on behalf of the OWF or otherwise related to the OWF that is not covered in full by funds raised by the OWF.
    3. In the event an unbudgeted or otherwise unfunded obligation arises related to the OWF, LFEU will coordinate with the Governing Board to address gap funding requirements.
  12. General & Administrative Expenses

    1. LFEU will have custody of and final authority over the usage of any fees, funds, and other cash receipts.
    2. A General & Administrative (G&A) fee will be applied by LFEU to funds raised to cover sponsorship records, finance, accounting, and human resources operations. The G&A fee will be 9% of the OWF\u2019s first EUR 1,000,000 of gross receipts each year and 6% of the OWF\u2019s gross receipts each year over EUR 1,000,000.
  13. General Rules and Operations.

    The OWF activities must:

    1. engage in the work of the project in a professional manner consistent with maintaining a cohesive community, while also maintaining the goodwill and esteem of LFEU in the open source community;
    2. respect the rights of all trademark owners, including any branding and usage guidelines;
    3. engage or coordinate with LFEU on all outreach, website and marketing activities regarding the OWF or on behalf of any Technical Project that invoke or associate the name of any Technical Project or LFEU; and
    4. operate under such rules and procedures as may be approved by the Governing Board and confirmed by LFEU.
  14. Amendments

    1. This Charter may be amended by a two-thirds vote of the entire Governing Board, subject to approval by LFEU.
"},{"location":"governance/code-of-conduct/","title":"Code of Conduct","text":"

The TAC may adopt a code of conduct (\u201cCoC\u201d) for the Project, which is subject to approval by LF Europe. In the event that a Project-specific CoC has not been approved, the LF Europe Code of Conduct listed at http://lfeurope.be/policies will apply for all Collaborators in the Project.

"},{"location":"governance/common-repository-structure/","title":"Common Repository Structure","text":"

OpenWallet Foundation projects are required to maintain a standard set of files in each repository. This document describes the required and recommended files.

"},{"location":"governance/common-repository-structure/#required-files-with-specified-content","title":"Required Files with Specified Content","text":"

Repositories MUST have these files with the specific content in the linked files, or a file with a link to the specified content with minimal exposition. These files MUST be at the root of the repository.

  • LICENSE

    Info

    All code within the OpenWallet Foundation should be licensed under Apache 2.0. Exceptions can be made by the OpenWallet Foundation Governing Board.

  • CODE_OF_CONDUCT.md

  • SECURITY.md
"},{"location":"governance/common-repository-structure/#required-files-with-variable-content","title":"Required Files with Variable Content","text":"

Repositories MUST have these files. Named files MUST be at the root of the repository, and may have format suffixes such as .md, .rst, or .txt.

  • README - A description of the project that contains information or links to information such as:
    • A reference to the Apache license (required).
    • The current and important past releases
    • Documentation for developers and users
  • MAINTAINERS - A list of all current maintainers with contact info. A separate document covers the specifics.
  • CONTRIBUTING - Directions on how to contribute code to the project, or a link to a page with that information.
  • CHANGELOG - A human readable list of recent changes. Changes should at least include the current release. This file may be maintainer curated or mechanically produced.
  • Continuous Integration / Continuous Delivery (CICD) configurations - Configurations needed to run CICD on OpenWallet Foundation provided systems (e.g., .github/workflows).
"},{"location":"governance/common-repository-structure/#recommended","title":"Recommended","text":"

Repositories SHOULD have these files. Named files SHOULD be at the root of the repository

  • NOTICE - As per section 4 subsection d of the Apache License, Version 2
  • Apache License Header information in each source code file. For new files added to OpenWallet Foundation repositories they SHOULD include the snippet SPDX-License-Identifier: Apache-2.0 as part of the header.
  • Build files consistent with the implementation language, such as:
    • For JavaScript/Node.js a package.json file
    • For Ruby a Gemfile file
    • For Java one of a Maven pom.xml, an Apache Ant build.xml, or a Gralde build.gradle
    • file
    • For Python setup.py and requirements.txt files
    • For Go go.mod and optionally go.sum
    • For Rust a cargo.toml file
    • For multi-lingual repositories a Makefile or executable build.sh script
    • For other languages, other standard build files a practitioner of the language would expect.
  • Testing code - Code to test the code in the repository (such as unit tests), in a location appropriate for the language.

    Why not a MUST?

    Not all repositories can be tested (homebrew, docs), which is the only reason this is a SHOULD.

"},{"location":"governance/common-repository-structure/#prohibited","title":"Prohibited","text":"

Repositories MUST NOT have these files

  • Executable binaries and shared library files built by code in the repository. This includes .exe, .dll, .so, .a and .dylib files not otherwise part of a third party library.
"},{"location":"governance/common-repository-structure/#credits","title":"Credits","text":"

This document is based on the Hyperledger Foundation's Common Respository Structure guideline.

"},{"location":"governance/elections/","title":"Elections","text":""},{"location":"governance/elections/#electing-a-chair","title":"Electing a Chair","text":"

From the OWF Charter

The TAC is responsible for ... electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC\u2019s representative (the \u201cTAC Representative\u201d).

The TAC voting members (as defined by the charter) will elect a chair on a yearly basis. Only TAC voting members are eligible to run for the TAC chair seat. Electing a chair will be completed through the voting process outlined below. If the TAC chair must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation and allow the TAC to fill the vacancy using the process outlined below.

"},{"location":"governance/elections/#electing-a-vice-chair","title":"Electing a Vice Chair","text":"

The TAC voting members (as defined by the charter) will elect a vice chair on a yearly basis. Only TAC voting members are eligible to run for the TAC vice chair seat. Electing a vice chair will be held in conjunction with the chair election using the voting process outlined below. The person with the second highest number of votes will serve as the vice chair. If the TAC vice chair must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation and allow the TAC to fill the vacancy using the process outlined below.

"},{"location":"governance/elections/#electing-at-large-representatives","title":"Electing \"At Large\" Representatives","text":"

Implied from the OWF Charter

The TAC is responsible for ... appointing up to two \"at large\" representatives to the TAC.

The TAC voting members (as defined by the charter) can appoint up to two \"at large\" representatives to the TAC. The election process for \"at large\" representatives will occur on a yearly basis. Members of the community can nominate themselves for the position. Alternatively, a TAC voting member can nominate a member of the community; however, the nominee must actively affirm their candidacy. Electing \"at large\" representatives will be completed through the voting process outlined below. If the \"at large\" representative must leave their position during their term or is otherwise unable to fulfill their duties, they should submit a resignation. \"At large\" vacancies will be handled using the process outlined below.

"},{"location":"governance/elections/#voting-process","title":"Voting Process","text":""},{"location":"governance/elections/#voting-tool","title":"Voting Tool","text":"

Voting occurs by a time-limited Helios Voting ballot.

"},{"location":"governance/elections/#voting-schedule","title":"Voting Schedule","text":"

The following is the default timeline for voting. The times can be adjusted to avoid weekends and holidays, but it is essential that the final schedule be published in advance and adhered to.

  • Call for nominations: Noon PT, E-16 days
  • End of call for nominations: Noon PT, E-9 days
  • A ballot will be distributed on: E-7 days
  • The election will be completed on: Noon PT, E-day and election results are announced

Nominations

Nominees should outline their qualifications and provide a statement explaining why they would be a good choice for the seat.

"},{"location":"governance/elections/#vacancies","title":"Vacancies","text":""},{"location":"governance/elections/#tac-chair-vacancy","title":"TAC Chair Vacancy","text":"

Should the TAC Chair seat become vacant, the vacancy will be filled by the vice chair who will serve the remainder of the original term.

"},{"location":"governance/elections/#tac-vice-chair-vacancy","title":"TAC Vice Chair Vacancy","text":"

Should the TAC Vice Chair seat become vacant, the vacancy will be filled by using the voting process outlined above and the replacement will serve the remainder of the original term.

"},{"location":"governance/elections/#tac-at-large-representative-vacancy","title":"TAC \"At Large\" Representative Vacancy","text":"

Should a TAC \"at large\" representative seat become vacant, the vacancy will be filled at the next indicative election, by electing a person for a full new term, not by serving out the vacant term.

Why?

A TAC \"at large\" vacancy is not filled immediately because the charter does not specify a lower limit for TAC \"at large\" representatives; it only specifies an upper limit.

"},{"location":"governance/elections/#tac-premier-sponsor-representative-vacancy","title":"TAC Premier Sponsor Representative Vacancy","text":"

Should a TAC premier sponsor representative seat become vacant, the premier sponsor will immediately appoint a new representative.

"},{"location":"governance/elections/#tac-project-representative-vacancy","title":"TAC Project Representative Vacancy","text":"

Should a TAC Project representative seat become vacant, the technical oversight body (e.g., a technical steering committee) for the TAC project will immediately appoint a new representative.

"},{"location":"governance/maintainer-inactivity/","title":"Maintainer Inactivity Policy","text":"

Note

This policy applies to projects that do not have an explicit maintainer inactivity policy. Where a project has an established and functioning policy, only that project's policy will apply.

OpenWallet Foundation very much appreciates the contributions of all maintainers but removing write privileges is in the interest of an orderly and secure project.

Activity can be code contributions, code reviews, issue reporting, or any other such activity trackable by GitHub attributed to a OpenWallet Foundation repository.

When a maintainer has not had any activity in a particular project for three months they will receive a notification informing them of the inactivity policies. The means and manner of notification (email, github mentions, etc.) will be at the discretion of the TAC Chair or who the TAC Chair designates.

When a maintainer has not had any activity in a particular project for six months a proposal will be opened up to move the maintainer from active status to emeritus status. A member of the TAC or a OpenWallet Foundation staff member will open this proposal. Any permissions to approve pull requests or commit code and any other such privileges associated with maintainer status will be removed.

The proposal will be in the form of a pull request (PR) to the relevant project repositories updating their maintainer lists. The inactive maintainer will be notified of this via an \"at\" @ mention in the PR. The PR will be open for at least one week to allow time for the project and maintainer to comment.

Inactive maintainers who express an intent to continue contributing may request a three-month extension. This request shall be made in the pull request updating their active maintainer status. Typically, only one such extension will be granted.

Maintainers who have been moved to emeritus status may return to active status when their activity within the project resumes and the current maintainers of the project approve their reactivation.

An OpenWallet Foundation Foundation staff member will provide a report (or maintain an automated means to generate a report) of the most recent GitHub tracked actions for contributors at regular intervals to the TAC. It will be the TAC's responsibility to act on the data.

"},{"location":"governance/maintainer-inactivity/#credits","title":"Credits","text":"

This document is based on the Hyperledger Foundation's Inactivity policy

"},{"location":"governance/maintainers-file-content/","title":"MAINTAINERS.md File Contents","text":"

All OpenWallet Foundation projects MUST have a MAINTAINERS file (MAINTAINERS.md or MAINTAINERS.rst) at the top-level directory of the source code. This document will provide specifics on what to include in the MAINTAINERS file.

"},{"location":"governance/maintainers-file-content/#list-of-project-maintainers","title":"List of Project Maintainers","text":"

The first thing that MUST be included in the MAINTAINERS file is a list of the project's maintainers, both active and emeritus.

It is recommended that the lists be sorted alphabetically and contain the maintainers name, GitHub ID, LFID, Chat ID, Email, Company Affiliation, and Scope.

Important

  • The email for a maintainer MUST be specified and be a reliable mechanism to contact the maintainer.
  • Scope is dependent on the project and may not exist for a given project. Scope could be the whole project, a specific repository, specific directories in a repository, or high-level description of responsibility (e.g., Documentation).

The following shows the suggested format for the information:

Example

Active Maintainers

Maintainer GitHub ID LFID Email Chat ID Company Affiliation Scope

Emeritus Maintainers

Maintainer GitHub ID LFID Email Chat ID Company Affiliation Scope"},{"location":"governance/maintainers-file-content/#what-does-being-a-maintainer-entail","title":"What Does Being a Maintainer Entail","text":"

The MAINTAINERS file SHOULD contain information about the different types of maintainers that exist (whole project, repo, part of repo) and what their duties are (e.g., maintainers calls, quarterly reports, code reviews, issue cleansing).

"},{"location":"governance/maintainers-file-content/#how-to-become-a-maintainer","title":"How to Become a Maintainer","text":"

The MAINTAINERS file SHOULD contain information about how to become a maintainer for the project. This section SHOULD list specific information about what is required. Information that SHOULD be included in this section:

  • What is required before someone can be considered to become a maintainer
  • Consider whether there should be different requirements based on the scope (whole project, repo, part of repo) of maintainership
  • Whether sponsorship by an existing maintainer is required
  • How maintainers are proposed to the community. A number of open source projects require that a PR be done against the MAINTAINERS file to make this proposal
  • How many maintainers must approve the proposed maintainer. This should include information about what happens if someone vetoes the proposal
  • How long the existing maintainers have to respond to the proposal
"},{"location":"governance/maintainers-file-content/#how-maintainers-are-removed-or-moved-to-emeritus-status","title":"How Maintainers are Removed or Moved to Emeritus Status","text":"

The MAINTAINERS file SHOULD contain information about how a maintainer is removed from the list of active maintainers. Information that SHOULD be included in this section:

  • What are the reasons a maintainer would be removed from the list of active maintainers
  • How this is proposed; similar to the way in which maintainers are added, one way to do this is via a PR against the MAINTAINERS file
  • How an emeritus maintainer becomes active again
"},{"location":"governance/maintainers-file-content/#credits","title":"Credits","text":"

This document is based on the Hyperledger Foundation's MAINTAINERS guideline.

"},{"location":"governance/project-annual-review-process/","title":"Project Annual Review Process","text":""},{"location":"governance/project-annual-review-process/#overview","title":"Overview","text":"

The TAC will undertake an annual review of all OpenWallet Foundation projects. This annual review will include an assessment as to whether:

  • each Lab is active
  • each Growth Stage project is making adequate progress towards the Impact Stage
  • each Impact Stage project is maintaining progress to remain at the Impact Stage

Reviews will start on the yearly anniversary of the project being accepted or moving to a new stage. The review will include a set of recommendations for each project to improve and/or recommendation to move a project across stages.

Projects can be provided with an extension of time in their current stage (up to the discretion of the TAC).

The project lifecycle contains Acceptance Criteria for moving a project to a new stage.

"},{"location":"governance/project-annual-review-process/#filing-an-annual-review","title":"Filing an Annual Review","text":"

OpenWallet Foundation staff will notify the project maintainers when the project review is due.

Project maintainers are responsible for agreeing between them who will complete the annual review. One of the maintainers should create the review in GitHub under openwallet-foundation/tac/docs/project-reviews.

  • Raise a PR titled [Project name] [year] Annual Review (e.g., Amazing Project 2024 Annual Review)
  • The PR should include a file called <year>-<project name>-annual.md (e.g., 2024-amazingproj-annual.md) with the contents described below
  • Send an email to the TAC mailing list so that the community knows the PR is there and can comment on it

If your annual review is not submitted within two months of notification, we will take this as a sign that the project is not under active maintenance and the TAC is likely to decide to archive the project and move it to Emeritus status.

Success

If a project has genuinely stalled we can save everyone\u2019s time and effort by archiving it.

"},{"location":"governance/project-annual-review-process/#annual-review-contents","title":"Annual Review Contents","text":"

Your annual review should answer the following questions:

  • Include a link to your project\u2019s LFX Insights page. We will be looking for signs of consistent or increasing contribution activity. Please feel free to add commentary to add colour to the numbers and graphs we will see on Insights.
  • How many maintainers do you have, and which organisations are they from? (Feel free to link to an existing MAINTAINERS file if appropriate.)
  • What do you know about adoption, and how has this changed since your last review or since being accepted into OWF? If you can list companies that are adopters of your project, please do so. (Feel free to link to an existing ADOPTERS file if appropriate.
  • How has the project performed against its goals since the last review? (We won't penalize you if your goals changed for good reasons.)
  • What are the current goals of the project? For example, are you working on major new features? Or are you concentrating on adoption or documentation?
  • How can the OpenWallet Foundation help you achieve your upcoming goals?
  • Do you think that your project meets the criteria for another stage (see Project Lifecycle Acceptance Criteria for the different stages)?
"},{"location":"governance/project-annual-review-process/#annual-review-by-the-tac","title":"Annual Review by the TAC","text":"

Annual reviews are performed in order to check in with projects, ascertain their progress, and address any outstanding questions.

  • A TAC representative volunteers to lead the review once the project files a PR.
  • The assigned TAC member reviews the content of the PR and analyzes the project for community health indicators, their findings are placed within a thread in the private TAC channel for discussion.
    • findings should highlight important facts about the project that could influence the TACs decision around the future of the project, its current stage, and path to other stages, etc.
    • the thread should always include whether the project's view of themselves is accurate and the ask of the TAC is reasonable to assist the project moving forward.
  • The project's maintainers are invited to the public TAC meeting to engage in TAC led discussion around the project. Project maintainers are not obligated to attend.
  • The assigned TAC member provides a summary of the project and leverages the thread's content as the basis of discussion.
    • discussion typically focuses on what is going well with the project and areas to improve.
  • The project's maintainers are invited to use this time to voice any concerns and requests for help they may have that are not captured in the PR (or highlight asks within the PR).
  • At the conclusion of the public meeting, the TAC votes to approve the annual review. Should a concern be registered on a project, the vote will be held separately.
  • After the meeting wraps up, the assigned TAC member may summarize the discussion on the PR in the form of a comment to document information for the project and community.
"},{"location":"governance/project-annual-review-process/#review-outcomes","title":"Review Outcomes","text":"

The outcome of the annual review is either:

  • At least two-thirds of the TAC members agree to continue to sponsor the project at its current stage, or
  • If enough TAC members do not agree to continue to sponsor the project at its current stage, we will discuss with you what stage might be the appropriate next stage, including Emeritus stage.

    Info

    If the TAC members recommend moving to a new stage, additional work may be required to provide details on how the project meets the new stage's acceptance criteria.

"},{"location":"governance/project-annual-review-process/#credits","title":"Credits","text":"

Ideas were taken from CNCF's Sandbox Annual Review Process.

"},{"location":"governance/project-lifecycle/","title":"Project Lifecycle","text":""},{"location":"governance/project-lifecycle/#overview","title":"Overview","text":"

This governance policy describes how an open source project can formally join the OpenWallet Foundation via the Project Proposal Process. It describes the Stages a project may be admitted under and what the criteria and expectations are for a given stage, as well as the acceptance criteria for a project to move from one stage to another. It also describes the Annual Review Process through which those changes will be evaluated and made.

Project progression - movement from one stage to another - allows projects to participate at the level that is most appropriate for them given where they are in their lifecycle. Regardless of stage, all OpenWallet Foundation projects benefit from a deepened alignment with existing projects, and access to mentorship, support, and Foundation resources.

Info

Capitalized terms not otherwise defined in this Project Lifecycle Policy have the meanings ascribed to them in the Charter of the OpenWallet Foundation.

"},{"location":"governance/project-lifecycle/#project-proposal-process","title":"Project Proposal Process","text":""},{"location":"governance/project-lifecycle/#introduction","title":"Introduction","text":"

This governance policy sets forth the proposal process for projects to be accepted into the OpenWallet Foundation. The process is the same for both existing projects which seek to move into the OpenWallet Foundation and new projects to be formed within the OpenWallet Foundation.

"},{"location":"governance/project-lifecycle/#project-proposal-requirements","title":"Project Proposal Requirements","text":"

Projects must be formally proposed via GitHub. Project proposals submitted to the OpenWallet Foundation should provide the following information to the best of their ability:

  • name of project
  • project description (what it does, why it is valuable, origin and history)
  • statement on alignment with the OpenWallet Foundation mission
  • link to current Code of Conduct (if one is adopted already)
  • sponsor from the TAC, if identified (a sponsor helps mentor projects)
  • project license (Apache 2.0 by default)
  • source control (GitHub by default)
  • issue tracker (GitHub by default)
  • external dependencies (including licenses)
  • release methodology and mechanics
  • names of initial maintainers, if different from those submitting proposal
  • briefly describe the project's leadership team and decision-making process
  • link to any documented governance practices
  • preferred maturity level (see stages below)
  • list of project's official communication channels (slack, irc, mailing lists)
  • link to project's website
  • links to social media accounts
  • existing financial sponsorship
  • infrastructure needs or requests
"},{"location":"governance/project-lifecycle/#project-acceptance-process","title":"Project Acceptance Process","text":"
  • Projects are required to present their proposal at a TAC meeting.
  • The TAC may ask for changes to bring the project into better alignment with the OpenWallet Foundation (adding a governance document to a repository or adopting a Code of Conduct, for example).

    Warning

    The project will need to make these changes in order to progress further.

  • Projects are accepted via a two-thirds supermajority vote of the TAC.

  • Satisfaction of the requirements of the initial stage of the project. The TAC will determine the appropriate initial stage for the project. The project can apply for a different stage via the review process.
"},{"location":"governance/project-lifecycle/#stages","title":"Stages","text":"

Every OpenWallet Foundation project has an associated maturity level. Proposed projects should state their preferred maturity level.

All projects may attend TAC meetings and contribute work regardless of their stage.

flowchart\n  p[Proposal]\n  subgraph as[Active Stages]\n    l[Labs]\n    g[Growth]\n    i[Impact]\n  end\n  subgraph is[Inactive Stages]\n    e[Emeritus]\n  end\n  p --> as\n  l <--> g\n  l <--> i\n  g <--> i\n  as --> is  
"},{"location":"governance/project-lifecycle/#labs","title":"Labs","text":"

Definition

Labs are those which the TAC believes are, or have the potential to be, important to the ecosystem of Technical Projects or the open wallet ecosystem as a whole. They may be early-stage code just getting started, or they may be long-established projects with minimal resource needs. The Labs stage provides a beneficial, neutral home for these projects in order to foster collaborative development and provide a path to deeper alignment with other OpenWallet Foundation projects via the project lifecycle process.

Examples

  1. Experimental code that is designed to extend one or more OpenWallet Foundation projects with functionality or interoperability libraries.
  2. Independent code that fits within the Foundation's mission and provides potential to meet an unfulfilled need.
  3. Code commissioned or sanctioned by the OpenWallet Foundation.
  4. Any code that intends to join the Growth or later stages in the future and wishes to lay the foundation for that transition.

Expectations

End users should evaluate Labs with care, as this stage does not set requirements for community size, governance, or production readiness. Labs will receive minimal support from the Foundation. Labs will be reviewed on an annual basis; they may also request a status review by submitting a report to the TAC.

Acceptance Criteria

To be considered for the Labs Stage, the project must meet the following requirements:

  • Submit a project proposal with a Preferred Maturity Level of Labs.
  • Document an intellectual property policy that leverages the Apache 2.0 license or an open license that has been approved by the OpenWallet Foundation's Governing Board.
  • In the case of existing projects, an agreement to transfer the project name, trademarks, and electronic account assets (github repo, social media accounts, domain names, etc.) to Linux Foundation Europe for the benefit of the OpenWallet Foundation.
  • Upon acceptance, Labs must list their status prominently on their website/README (e.g., PROJECT, an OpenWallet Foundation Lab).
"},{"location":"governance/project-lifecycle/#growth-stage","title":"Growth Stage","text":"

Definition

The Growth Stage is for projects that are interested in reaching the Impact Stage, and have identified a growth plan for doing so. Growth Stage projects will receive mentorship from the TAC and are expected to actively develop their community of contributors, governance, project documentation, roadmap, and other variables identified in the growth plan that factor into broad success and adoption.

In order to support their active development, projects in the Growth stage have a higher level of access to Foundation resources, which will be agreed upon and reviewed on a yearly basis. A project's progress toward its growth plan goals will be reviewed on a yearly basis, and the TAC may ask the project to move to the Labs stage if progress on the plan drops off or stalls.

Examples

  1. Projects that are on their way or very likely to become Growth or Impact projects.
  2. Projects that have developed new growth targets or other community metrics for success.
  3. Projects that are looking to create a lifecycle plan (maintainership succession, contributor programs, version planning, etc.).
  4. Projects that need more active support from the Foundation or TAC mentorship in order to reach their goals.

Expectations

Projects in the Growth stage are generally expected to move out of the Growth stage within two years. Depending on their growth plans, projects may cycle through Labs, Growth, or Impact stage as needed.

Acceptance Criteria

To be considered for Growth Stage, the project must meet the Labs requirements as well as the following:

  • A presentation at the meeting of the TAC.
  • 2 TAC sponsors to champion the project and provide mentorship as needed.
  • Development of a growth plan, to be done in conjunction with their project mentor(s) at the TAC.
  • Development of a project roadmap that provides differentiated features and capabilities and the timeframe for completion.
  • Document that it is being used successfully in either proof of concepts or pilots by at least two independent end users which, in the TAC\u2019s judgment, are of adequate quality and scope.
  • Demonstrate a substantial ongoing flow of commits and merged contributions.
  • Demonstrate that the current level of community participation is sufficient to meet the goals outlined in the growth plan and roadmap.
  • Since these metrics can vary significantly depending on the type, scope and size of a project, the TAC has final judgment over the level of activity that is adequate to meet these criteria.
  • Demonstrates how this project differs from existing projects in the Growth and Impact stages.
  • Receive a two-thirds supermajority vote of the TAC to move to Growth Stage.
"},{"location":"governance/project-lifecycle/#impact-stage","title":"Impact Stage","text":"

Definition

The Impact Stage is for projects that have reached their growth goals and are now on a sustaining cycle of development, maintenance, and long-term support. Impact Stage projects are used commonly in enterprise production environments and have large, well-established project communities.

Examples

  1. Projects that have publicly documented release cycles and plans for Long Term Support (\"LTS\").
  2. Projects that have themselves become platforms for other projects.
  3. Projects that are able to attract a healthy number of committers on the basis of its production usefulness (not simply 'developer popularity').
  4. Projects that have several, high-profile or well known end-user implementations.

Expectations

Impact Stage projects are expected to participate actively in TAC proceedings, and as such have a binding vote on TAC matters requiring a formal vote, such as the election of a TAC representative. They receive ongoing financial and marketing support from the Foundation, and are expected to cross promote the Foundation along with their activities.

Acceptance Criteria

To move from Labs or Growth status, or for a new project to join as an Impact project, a project must meet the Growth stage criteria plus:

  • Have a defined governing body of at least 5 or more members (owners and core maintainers), of which no more than one-third is affiliated with the same employer. In the case there are 5 governing members, 2 may be from the same employer.
  • Have a documented and publicly accessible description of the project's governance, decision-making, and release processes.
  • Have a healthy number of maintainers from at least two organizations. A maintainer is defined as someone with the commit bit; i.e., someone who can accept contributions to some or all of the project.
  • Have a Code of Conduct in a form acceptable to the OpenWallet Foundation.
  • Explicitly define a project governance and maintainer process. This is preferably laid out in a GOVERNANCE.md file and references a CONTRIBUTING.md and MAINTAINERS.md file showing the current and emeritus maintainers (see MAINTAINERS.md File Contents for more information).
  • Document that it is being used successfully in production by at least two independent end users which, in the TAC\u2019s judgment, are of adequate quality and scope.
  • Have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).
  • Have a good standing with respect to security.
  • Other metrics as defined by the applying Project during the application process in cooperation with the TAC.
  • Receive a supermajority vote from the TAC to move to Impact stage. Projects can move directly from Labs to Impact, if they can demonstrate sufficient maturity and have met all requirements.
"},{"location":"governance/project-lifecycle/#emeritus-stage","title":"Emeritus Stage","text":"

Definition

Emeritus projects are projects which the maintainers feel have reached or are nearing end-of-life. Emeritus projects have contributed to the ecosystem, but are not necessarily recommended for modern development as there may be more actively maintained choices. The Foundation appreciates the contributions of these projects and their communities, and the role they have played in moving the ecosystem forward.

Examples

  1. Projects that are \"complete\" by the maintainers' standards.
  2. Projects that do not plan to release major versions in the future.

Expectations

Projects in this stage are not in active development. Their maintainers may infrequently monitor their repositories, and may only push updates to address security issues, if at all. Emeritus projects should clearly state their status and what any user or contributor should expect in terms of response or support. If there is an alternative project the maintainers recommend, it should be listed as well. The Foundation will continue to hold the IP and any trademarks and domains, but the project does not draw on Foundation resources.

Acceptance Criteria

Projects may be granted Emeritus status via a two-thirds vote from the TAC and with approval from project ownership. In cases where there is a lack of project ownership, only a two-thirds vote from the TAC is required.

Info

If members of the community would like to re-active a project that has been granted Emeritus status, the community must start the lifecycle over again by submitting a new proposal to the TAC.

"},{"location":"governance/project-lifecycle/#annual-review-process","title":"Annual Review Process","text":"

Each project will undergo an annual review process to determine whether projects are in the stage that accurately reflects their needs and goals.

"},{"location":"governance/release-taxonomy/","title":"Release Taxonomy","text":"

Note

This policy is not about exiting project stages.

Releases at OpenWallet Foundation must be done according to the SemVer taxonomy. In addition to the semantic versioning scheme, where we use MAJOR.MINOR.PATCH numbering, following the established guidance given in the semver specification, it is also strongly encouraged that projects should use the following tags, as permitted by semver:

  • preview
  • alpha
  • beta
  • rcN (release candidate N - where N is 1-n incremented for each candidate)
  • snapshot-<sha> for interim, possible unstable builds

    Note

    Further, for interim, possibly unstable builds working towards a tagged release, we will append the first seven (7) characters of the SHA-1 hash of the latest commit for the branch from which the build is produced, so that we can identify the commit level of a given test, etc. e.g. 0.6-snapshot-36e99cd

"},{"location":"governance/release-taxonomy/#preview","title":"preview","text":"

Not feature complete, but most functionality is implemented. Any missing functionality that is committed to the production release is identified, and there are specific people working on those features. Not heavily performance tuned, but performance testing has started with the first few hotspots identified and perhaps even addressed. No highest priority issues are in an open state. First-level developer documentation provided to help new developers with the learning curve.

"},{"location":"governance/release-taxonomy/#alpha","title":"alpha","text":"

Feature complete, for all features committed to the production release. Ready for Proof of Concept-level deployments. Performance can be characterized in a predictable way, so that basic PoC's can be done within the bounds of published expectations. APIs are documented. First attempts at end-user documentation have been made. Developer documentation is further advanced. No highest priority issues are in an open state.

"},{"location":"governance/release-taxonomy/#beta","title":"beta","text":"

Feature complete for all features committed to the production release, perhaps with optional features when safe to add. Ready for Pilot-level engagements. Performance is very well characterized and active optimizations are being done, with a target set for the Production release. No highest priority or high priority bugs are in an open state. Developer documentation is complete; end-user documentation is mostly done.

"},{"location":"governance/release-taxonomy/#rcn","title":"rcN","text":"

For a forthcoming production release, we will prepare multiple candidate releases intended to be heavily tested by the community. As we cycle through resolving uncovered issues, we will issue another when no remaining highest or high priority issues remain, and repeat until we feel confident in releasing a production release, with no qualifier. e.g. 1.0.

"},{"location":"governance/release-taxonomy/#credits","title":"Credits","text":"

This document is based on the Hyperledger Foundation's Release Taxonomy policy.

"},{"location":"governance/roles-and-responsibilities/","title":"Roles and Responsibilities","text":""},{"location":"governance/roles-and-responsibilities/#technical-advisory-council","title":"Technical Advisory Council","text":"

The OpenWallet Foundation charter states that the TAC is responsible for:

Quote

  1. maintaining an overall strategic vision for technical collaboration and coordinating collaboration among Technical Projects, including development of an overall technical vision for the community;
  2. making recommendations to the Budget Committee of resource priorities for Technical Projects;
  3. electing annually a chairperson to preside over meetings, set the agenda for meetings, ensure meeting minutes are taken and who will also serve on the Governing Board as the TAC\u2019s representative (the \u201cTAC Representative\u201d);
  4. creating, maintaining and amending project lifecycle procedures and processes, deciding where Technical Projects fall within that lifecycle;
  5. determining when a technical project should be admitted as a Technical Project or any Technical Project should be considered a TAC Project; and
  6. such other matters related to the technical role of the TAC as may be communicated to the TAC by the Governing Board.
"},{"location":"governance/roles-and-responsibilities/#tac-members","title":"TAC Members","text":"

TAC members are expected to:

  • Subscribe to the TAC mailing list and the OpenWallet Github organization to stay aware of the TAC related updates and issues
  • Regularly participate in the TAC meetings
  • Bring up and help resolve any issues related to the needs of the OpenWallet technical community
  • Participate in, and optionally chair, the Task Forces set up by the TAC to address specific issues
  • Act as stewards for OpenWallet Foundation promoting and helping grow the organization and its activities by engaging of their own accord in activities such as posting on social media, responding to questions raised in forums, helping new community members find their way around, and giving talks at conferences on OpenWallet Foundation related topics
  • Participate in the appointment and election of \"at large\" representatives
"},{"location":"governance/roles-and-responsibilities/#tac-chair","title":"TAC Chair","text":"

The TAC chair has the following additional responsibilities:

  • Running the TAC meetings, such as the TAC calls per the agreed upon schedule. This includes: setting up and publishing an agenda, running the meeting, and ensuring any outcome is duly recorded
  • Representing the TAC, and more broadly the OpenWallet Foundation technical community, on the Governing Board, and giving updates to the Governing Board on TAC activities
"},{"location":"governance/roles-and-responsibilities/#tac-vice-chair","title":"TAC Vice Chair","text":"

The TAC vice chair has the following additional responsibilities:

  • Running the TAC meetings when the TAC Chair is unable, including setting up and publishing an agenda and ensuring any outcome is duly recorded
  • Helping to marshall people who want to talk during a meeting
"},{"location":"governance/security/","title":"Security Policies","text":""},{"location":"governance/security/#vulnerability-management-team","title":"Vulnerability Management Team","text":"

The OpenWallet Foundation's Vulnerability Management Team (VMT) is responsible for managing vulnerability reports for the OWF's projects.

"},{"location":"governance/security/#team-members","title":"Team Members","text":"
  • Two volunteer developers from each OWF project will serve on the security team.
  • Each volunteer will have a 12 month commitment to the security team.
"},{"location":"governance/security/#responsibilities","title":"Responsibilities","text":"

The VMT has the following responsibilities:

  • help triage and respond to reports following the responsible disclosure policy.
  • keep the reporter informed of the status of their report by sending updates at a minimum of once per week.
"},{"location":"governance/security/#responsible-disclosure","title":"Responsible Disclosure","text":"
  • 48 working hours to respond to reporter acknowledging the report.
  • 1 week to triage, report, and coordinate with the affected project maintainers to plan the fix of the bug.
  • 90 days to fix and release a fix or disclose the security bug.
  • Any \"critical\" errors shall be assigned a CVE number and disclosed through the formal CVE system.

Example Acknowledgment Response

Dear hacker,

Thank you for your recent report of a security bug. I am emailing to let you know that we are in the process of investigating your report and will reply to you again when we have determined the validity of your report. We may have further questions that come up as part of our investigation. We appreciate your contribution to project name.

Thank you,

your name

Example Update

Dear hacker,

I'm emailing to let you know that we have confirmed your bug report as a valid security concern and have filed a bug in our system. We will keep you informed of the status of the bug.

Thank you,

your name

"},{"location":"governance/security/#security-markdown","title":"Security Markdown","text":"

Each project must have the following information included in the SECURITY.md file at the root of the project:

# How to Report a Security Bug\nTo report a security issue, please email\n[security@lists.openwallet.foundation](mailto:security@lists.openwallet.foundation)\nwith a description of the issue, the steps you took to create the issue,\naffected versions, and if known, mitigations for the issue. Our vulnerability\nmanagement team will acknowledge receiving your email within 2 working days.\nThis project follows a 90 day disclosure timeline.\n
"},{"location":"governance/special-interest-group-process/","title":"Special Interest Group","text":"

A special interest group (SIG) under the Technical Advisory Council (TAC) is a group with a shared interest in advancing a specific area of knowledge, learning, or technology related to the mission of the OpenWallet Foundation where members cooperate to affect or to produce solutions within their particular field. Unlike a task force, SIGs are typically long running and may or may not produce any deliverables. A SIG can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

"},{"location":"governance/special-interest-group-process/#propose-a-special-interest-group","title":"Propose a Special Interest Group","text":"

To propose a special interest group, create an issue in the TAC GitHub repository using the Special Interest Group template. The issue should be named \"Special Interest Group Proposal: \\<name of special interest group>\". The issue should include the following information:

  • Introduction/background material
  • Objectives of the special interest group
  • List of deliverables or work products (optional)
  • Leader(s)
  • Initial participant list
"},{"location":"governance/special-interest-group-process/#approval-process","title":"Approval Process","text":"

The TAC will review the special interest group proposal first by providing comments in the issue and secondly by bringing the special interest group proposal to a discussion and vote in a TAC meeting.

The decision of the vote will be documented in the issue. If the special interest group is approved, a discussion channel in Discord will be created. In addition, we will work with the OpenWallet Foundation operations team to schedule a meeting on the OpenWallet Foundation calendar. If necessary, a GitHub repository and/or mailing list will also be created at the request of the special interest group leader(s).

"},{"location":"governance/special-interest-group-process/#special-interest-group-procedures","title":"Special Interest Group Procedures","text":"

The special interest group can decide on the mechanism for running the SIG. Meeting minutes and a log of decisions that have been made should be kept for ensuring continuity of the special interest group. The special interest group should update the issue to reflect where the meeting notes and log of decisions is kept or use the issue directly to capture this information.

"},{"location":"governance/special-interest-group-process/#reporting-on-special-interest-group-activities","title":"Reporting on Special Interest Group Activities","text":"

Every quarter the special interest group leader should arrange a time with the TAC chair to present the activities of the SIG at a TAC meeting. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation. This will ensure that the SIG is still active and that there is still value in hosting the special interest group.

"},{"location":"governance/task-force-process/","title":"Task Force","text":"

A task force is a group that is focused on a task with limited scope and fixed time to complete. Unlike a (special interest group](./special-interest-group-process.md), a task force will have a specific set of deliverables or work products that it will create and be limited in time to completion. A task force can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

"},{"location":"governance/task-force-process/#propose-a-task-force","title":"Propose a Task Force","text":"

To propose a task force, create an issue in the TAC GitHub repository. The issue should be named \"Task Force Proposal: \\<name of task force>\". The issue should include the following information:

  • Introduction/background material
  • Objectives of the task force
  • List of deliverables or work products
  • Time to complete (no more than 6 months)
  • Leader(s)
  • Initial participant list
"},{"location":"governance/task-force-process/#approval-process","title":"Approval Process","text":"

The TAC will review the task force proposal first by providing comments in the issue and secondly by bringing the task force proposal to a discussion and vote in a TAC meeting.

The decision of the vote will be documented in the issue. If the task force is approved, a discussion channel in Discord will be created. In addition, we will work with the OpenWallet Foundation operations team to schedule a meeting on the OpenWallet Foundation calendar. If necessary, a GitHub repository and/or mailing list will also be created at the request of the task force leader(s).

"},{"location":"governance/task-force-process/#task-force-procedures","title":"Task Force Procedures","text":"

The task force can decide on the mechanism for creating the deliverables. Meeting minutes and a log of decisions that have been made should be kept for ensuring continuity of the task force. The task force should update the issue to reflect where the meeting notes and log of decisions is kept or use the issue directly to capture this information.

"},{"location":"governance/task-force-process/#reporting-on-task-force-completion-of-deliverables","title":"Reporting on Task Force Completion of Deliverables","text":"

Upon completion of the task force's deliverables, the task force should arrange a time with the TAC chair to present the deliverables at a TAC meeting. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation.

"},{"location":"governance/task-force-process/#requesting-an-extension-on-completion-date","title":"Requesting an Extension on Completion Date","text":"

If the task force is not able to complete the deliverables by the specified completion date, then the leader of the task force should arrange a time with the TAC chair to discuss the extension at a TAC meeting. This discussion should include information on the current status, the delays, and the expected updates to the schedule. This can be accomplished by sending an email to the TAC mailing list at tac@lists.openwallet.foundation.

"},{"location":"meetings/","title":"TAC Meetings","text":"

TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project, and others in the general public interested in the OpenWallet Foundation.

The meetings will be held bi-weekly starting Wednesday, March 8, 2023 at 7:00am PT.

  • Join link with meeting ID and passcode embedded: https://zoom.us/j/92638265993?pwd=REErdEF1QjVWYWFNU3BrRDgwckp2Zz09
  • Location: https://zoom.us/j/92638265993
  • Meeting ID: 926 3826 5993
  • Passcode: 565874
  • Find your local number: https://zoom.us/u/ad1obgPfpf
"},{"location":"meetings/2023-03-08/","title":"2023-03-08","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-03-08/#agenda","title":"Agenda","text":"
  • Welcome and intros of TAC
  • Reminder of TAC Charter
  • TAC Chair election
  • TAC \"at large\" seats
  • Call for code from the Community
  • Open Discussion and Next Steps
"},{"location":"meetings/2023-03-08/#recording","title":"Recording","text":"
  • recording
"},{"location":"meetings/2023-03-08/#actions","title":"Actions","text":"
  • Tracy Kuhrt is running unopposed for TAC Chair. Can the 4 TAC Representatives please +1 this to formalize.
  • Review proposed TAC Website and Governance Policies as detailed at https://lists.openwallet.foundation/g/TAC/message/3
  • Review https://github.com/openwallet-foundation/project-proposals
"},{"location":"meetings/2023-03-08/#minutes","title":"Minutes","text":"
  • TAC Charter
    • The TAC is responsible for maintaining an overall strategic vision for technical collaboration and coordinating collaboration among Technical Projects, including development of an overall technical vision for the community.
    • Section 5 of https://cdn.platform.linuxfoundation.org/agreements/openwalletfoundation.pdf
  • TAC Chair Election
    • Tracy Kuhrt is running unopposed \u2013 will move to email vote to formalize
  • Composition
    • Accenture - Tracy Kuhrt
    • Futurewei - Wenjing Chu
    • Gen Digital - Drummond Reed
    • Visa - Marie Austenaa
    • \u201cat large\u201d representative #1 appointed by vote of the TAC
    • \u201cat large\u201d representative #2 appointed by vote of the TAC
    • one representative appointed by the technical oversight body (e.g., a technical steering committee) of each TAC Project
  • Call for Code
    • Please review https://github.com/openwallet-foundation/project-proposals
  • Governance rules
    • Tracy gave an overview of a proposed website and policies for the TAC at https://github.com/openwallet-foundation/tac
  • Open Discussion
    • The Governing Board met yesterday and appointed Daniel Goldscheider as Interim Executive Director. Daniel introduced himself and provided his thoughts on the future of OWF.
    • A suggestion was made for a landscape review. A comment was made that that work has begun here.
"},{"location":"meetings/2023-03-22/","title":"2023-03-22","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-03-22/#agenda","title":"Agenda","text":"
  • Review and approve TAC Governance documents
  • TAC \"at large\" elections
  • Call for code from the Community
  • Open Discussion and Next Steps
"},{"location":"meetings/2023-03-22/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-03-22/#action-items","title":"Action Items","text":"
  • Conduct an email vote for the Governance documents approval and adoption.
  • Conduct an email vote for the TAC \"at large\" schedule and process.
  • Todd to confirm whether the TAC can create an alternate policy or whether the Governing Board will need to update the charter to reflect.
  • Tracy to create a pull request to update the project proposal template to include links to the mission and project lifecycle.
  • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs.
"},{"location":"meetings/2023-03-22/#minutes","title":"Minutes","text":"
  • No comments on the TAC Governance documents. Will conduct an email vote to adopt.
  • Discussed TAC \"at large\" election process. Will conduct an email vote to adopt.
  • Reviewed project proposal process and instructions and went through the template. Two suggested changes:
    • Include a link to the mission.
    • Include a link to the project lifecycle for stage information.
  • Next steps
    • Create a labs organization (openwallet-foundation-labs) to host any lab proposals.
"},{"location":"meetings/2023-04-05/","title":"2023-04-05","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-04-05/#2023-04-05","title":"2023-04-05","text":""},{"location":"meetings/2023-04-05/#agenda","title":"Agenda","text":"
  • Review action items from last meeting
  • TAC \"at large\" election results
  • Architecture SIG update
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-04-05/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-04-05/#action-items","title":"Action Items","text":"
  • Tracy to rename the architecture-task-force GitHub repo to architecture-sig - completed
  • Jenn to rename the meeting invite for the Outside Architecture Special Interest Group to reflect that the name should be the Architecture SIG
  • Jenn to add Stavros to the TAC meeting invite - completed
  • Jenn to add Jeremie to the TAC meeting invite
  • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs
"},{"location":"meetings/2023-04-05/#meeting-minutes","title":"Meeting Minutes","text":"
  • Review action items from last meeting
    • Conduct an email vote for the Governance documents approval and adoption - results 3 TAC members voted in favor; 1 TAC member abstained
    • Conduct an email vote for the TAC \"at large\" schedule and process - results 3 TAC members voted in favor; 1 TAC member abstained
    • Todd to confirm whether the TAC can create an alternate policy or whether the Governing Board will need to update the charter to reflect - currently no policy for TAC alternates; if we want this, we would need to present this to the GB to get a charter update
      • The TAC would like to recommend that the board create an alternate policy for the TAC.
      • The language will be similar to the following \"A TAC member can designate an alternate for a specific meeting, and has to notify the chair in advance.\"
    • Tracy to create a pull request to update the project proposal template to include links to the mission and project lifecycle - pull request created and merged
    • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs - not yet completed
  • TAC \"at large\" election results
    • Jeremie Miller
    • Stavros Kounis
  • Architecture SIG update
    • Digital wallet engine architecture topics brainstorm - please add any topics that you think we missed
    • Discussion on MOST important architecture topic - please add to the discussion
    • A question was brought up about the status of this group and whether it is a task force or a special interest group. The TAC formalized the group as a special interest group under the TAC.
  • Call for code from the community
  • Next steps
    • Discussion regarding the upcoming conference season, including IIW, EIC, and others.
    • Suggestion was made to create an OpenWallet Foundation event calendar.
    • Next meeting is April 19, 2023.
"},{"location":"meetings/2023-04-19/","title":"2023-04-19","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-04-19/#2023-04-19","title":"2023-04-19","text":""},{"location":"meetings/2023-04-19/#agenda","title":"Agenda","text":"
  • Review action items from last meeting
  • Priorities
  • Internet Identity Workshop (IIW) updates
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-04-19/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-04-19/#action-items","title":"Action Items","text":"
  • Document process for creating a task force - pull request
"},{"location":"meetings/2023-04-19/#meeting-minutes","title":"Meeting Minutes","text":"
  • Review action items from last meeting
    • Tracy to rename the architecture-task-force GitHub repo to architecture-sig - completed
    • Jenn to rename the meeting invite for the Outside Architecture Special Interest Group to reflect that the name should be the Architecture SIG - completed
    • Jenn to add Stavros to the TAC meeting invite - completed
    • Jenn to add Jeremie to the TAC meeting invite - completed
    • Create a GitHub organization (openwallet-foundation-labs) to host incoming labs - completed
  • Priorities
    • Projects
      • Pipeline of projects
      • Getting a method of tracking and accessing projects
      • Rule book / guide on the evaluation process and criteria for new projects
      • Technical Focus
        • Cloud based, edge based, and hybrid wallets
        • Common components for wallets
        • Specific components for money, identity, and object wallets
    • Collaboration between OWF and European Commission
      • Tracking changes in the next European Digital Identity Wallet Architecture and Reference Framework (ARF) and making sure it lines up with OWF thinking
      • Maintaining dialog and exploring alignment
  • Internet Identity Workshop (IIW) updates
    • Topics on digital wallets, credentials, and interoperability
    • Sessions on EUDI and the ARF
    • A number of OpenWallet topics will be discussed on day 2 and 3
    • Discussions about the Linux Foundation Trust umbrella
  • Call for code from the community
    • Completing the assessment framework may allow people to better understand what type of projects should be considered for contribution
  • Next steps
    • Next meeting is May 3, 2023
"},{"location":"meetings/2023-05-03/","title":"2023-05-03","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-05-03/#2023-05-03","title":"2023-05-03","text":""},{"location":"meetings/2023-05-03/#agenda","title":"Agenda","text":"
  • Review action items from last meeting
  • Welcome new TAC member
  • Task Force Proposal
  • Assessment Framework - How do we want to assess incoming projects?
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-05-03/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-05-03/#action-items","title":"Action Items","text":"
  • Update Task Force process to include information on optional mailing lists and capturing meeting notes -- commit -- completed
  • Create process for Special Interest Groups similar to Task Force process and cross link the two processes together
"},{"location":"meetings/2023-05-03/#meeting-minutes","title":"Meeting Minutes","text":"
  • Review action items from last meeting

    • Document process for creating a task force - pull request -- completed
  • Welcome new TAC member

    • We welcomed Troy Ronda from Gen Digital who is replacing Drummond Reed
  • Task Force Proposal

    • RESOLVED: That the task force process documented in this pull request and rendered on this page and using this issue template is hereby confirmed, approved, and adopted.
    • Unanimously passed
  • Assessment Framework

    • How do we want to assess incoming projects?
      • Currently documented project acceptance process
      • Each Project Lifecycle Stage documents its acceptance criteria
    • What are the types of projects that we want to include?
      • Alignment with the OpenWallet Foundation mission
      • \u201cvarious open source, open data and/or other open projects relating to or supporting development of digital wallets, including infrastructure and support initiatives related\u201d
    • Discussion
      • Projects that would satisfy components of the conceptual architecture created by the architecture SIG
      • Projects that would fit in slide 6 of the OpenWallet Foundation Overview 2023.02.23 deck
  • Call for code from the community

  • Next steps

    • Next meeting is May 17, 2023
"},{"location":"meetings/2023-05-17/","title":"2023-05-17","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-05-17/#2023-05-17","title":"2023-05-17","text":""},{"location":"meetings/2023-05-17/#agenda","title":"Agenda","text":"
  • Review action items from last meeting
  • New lab proposals
    • SD-JWT Kotlin
    • SD-JWT Python
  • Special Interest Group process proposal
  • OID4VCI and OID4VP Due Diligence Task Force
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-05-17/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-05-17/#tac-voting-members","title":"TAC Voting Members","text":"
  • Jeremie Miller
  • Marie Austenaa (Trevor Crooks attended and voted in Marie's place)
  • Stavros Kounis
  • Tracy Kuhrt
  • Troy Ronda
  • Wenjing Chu
"},{"location":"meetings/2023-05-17/#action-items","title":"Action Items","text":"
  • Work with Fabian to transfer SD-JWT Kotlin repo to openwallet-foundation-labs organization
  • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization
  • Comment on OID4VCI and OID4VP Due Diligence Task Force proposal and update to reflect comments. We will bring this to a vote at the next TAC meeting
"},{"location":"meetings/2023-05-17/#meeting-minutes","title":"Meeting Minutes","text":"
  • Review action items from last meeting

    • Update Task Force process to include information on optional mailing lists and capturing meeting notes -- commit -- completed
    • Create process for Special Interest Groups similar to Task Force process and cross link the two processes together -- PR -- completed
  • New lab proposals

    • SD-JWT Kotlin Library
      • RESOLVED: That the SD-JWT Kotlin Library lab is hereby confirmed, approved, and adopted.
      • Unanimously approved by the present TAC voting members.
    • SD-JWT Python Reference Implementation
      • RESOLVED: That the SD-JWT Python Reference Implementation lab is hereby confirmed, approved, and adopted.
      • Unanimously approved by the present TAC voting members.
  • Special Interest Group process proposal

    • RESOLVED: That the special interest group (SIG) process documented in this pull request and rendered on this page and using this issue template is hereby confirmed, approved, and adopted.
    • Unanimously approved by the present TAC voting members.
  • OID4VCI and OID4VP Due Diligence Task Force

    • Support exists for this task force, but we ran out of time to conclude the discussion.
    • Request for comments on OID4VCI and OID4VP Due Diligence Task Force proposal and +1 if you are interested in participating.
    • Hakan will update to reflect comments so that we can bring this to a vote at the next TAC meeting.
  • Call for code from the community

  • Next steps

    • Next meeting is May 31, 2023
"},{"location":"meetings/2023-05-31/","title":"2023-05-31","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-05-31/#2023-05-31","title":"2023-05-31","text":""},{"location":"meetings/2023-05-31/#agenda","title":"Agenda","text":"
  • Review action items from last meeting
  • Update on TAC alternates
  • OID4VC Due Diligence Task Force
  • Credential Format Comparison SIG
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-05-31/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-05-31/#tac-voting-members","title":"TAC Voting Members","text":"
  • Jeremie Miller
  • Marie Austenaa
  • Stavros Kounis
  • Tracy Kuhrt
  • Troy Ronda
  • Wenjing Chu
"},{"location":"meetings/2023-05-31/#action-items","title":"Action Items","text":"
  • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
  • Create proposed language for TAC alternates
  • Add link to community calendar to website
  • OID4VC Due Diligence Task Force

    • Create Discord channel
    • Add information about Task Forces to TAC website
    • Add link to the above to the OpenWallet Foundation GitHub Profile
  • Credential Format Comparison SIG

    • Create Discord channel
    • Work with Torsten to get GitHub repo transferred to OpenWallet Foundation
    • Determine leader of the SIG
    • Add information about Special Interest Groups to TAC website
    • Add link to the above to the OpenWallet Foundation GitHub Profile
"},{"location":"meetings/2023-05-31/#meeting-minutes","title":"Meeting Minutes","text":"
  • Review action items from last meeting

    • Work with Fabian to transfer SD-JWT Kotlin repo to openwallet-foundation-labs organization -- completed SD-JWT-Kotlin
    • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
    • Comment on OID4VC Due Diligence Task Force proposal and update to reflect comments -- in progress
  • Update on TAC alternates

    • The Governing Board agreed to modify the Charter to include the following language:

      Updated Language

      5.c) TAC meetings are intended to be open to observe by Sponsors, contributors to any TAC Project and others in the general public interested in the OpenWallet Foundation. The TAC may decide whether to allow named representatives (one per voting member) to attend as an alternate.

  • OID4VC Due Diligence Task Force

    • Unanimously approved by the present TAC voting members.
  • Credential Format Comparison SIG

    • Unanimously approved by the present TAC voting members.
  • Call for code from the community

  • Next steps

    • Next meeting is June 14, 2023
"},{"location":"meetings/2023-06-14/","title":"2023-06-14","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-06-14/#2023-06-14","title":"2023-06-14","text":""},{"location":"meetings/2023-06-14/#agenda","title":"Agenda","text":"
  • Announcements
  • Review action items from last meeting
  • TAC alternates policy
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-06-14/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-06-14/#tac-voting-members","title":"TAC Voting Members","text":"
  • Jeremie Miller
  • Marie Austenaa
  • Stavros Kounis
  • Tracy Kuhrt
  • Troy Ronda
  • Wenjing Chu
"},{"location":"meetings/2023-06-14/#action-items","title":"Action Items","text":"
  • Determine vice chair language
  • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization
  • Credential Format Comparison SIG

    • Work with Torsten to get GitHub repo transferred to OpenWallet Foundation
"},{"location":"meetings/2023-06-14/#meeting-minutes","title":"Meeting Minutes","text":"
  • Announcements

    • OID4VC Due Diligence Task Force kickoff meeting \u2013 Wednesday, the 21st at 5pm CEST
    • Architecture SIG merged Key Management Services conceptual architecture
    • Credential Format Comparison SIG will meet on Wednesdays at 5pm CEST on alternate weeks to the OID4VC Due Diligence Task Force. Kickoff meeting planned for June 28th
  • Review action items from last meeting

    • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
    • Create proposed language for TAC alternates -- completed
    • Add link to community calendar to website -- completed
    • OID4VC Due Diligence Task Force -- completed

      • Create Discord channel (#oid4vc-due-diligence-tf)
      • Add information about Task Forces to TAC website
      • Add link to the above to the OpenWallet Foundation GitHub Profile
    • Credential Format Comparison SIG -- in progress

      • Create Discord channel (#credential-format-comparison-sig)
      • Work with Torsten to get GitHub repo transferred to OpenWallet Foundation
      • Determine leader of the SIG (Mirko Molik)
      • Add information about Special Interest Groups to TAC website
      • Add link to the above to the OpenWallet Foundation GitHub Profile
  • TAC Alternates Policy

    • RESOLVED: That the TAC Alternates Policy is hereby confirmed, approved, and adopted.
      • Unanimously approved by the present TAC voting members.
  • Call for code from the community

    • A question was asked whether we were tracking a wishlist for potential projects
      • In general, we are looking for projects that fit with the vision of the OpenWallet Foundation. Those that are focused on wallet engine related to identity, money, and objects
      • We previously were capturing potential code projects using this Google sheet
    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
  • Open discussion and next steps

    • Relative to the Credential Format Comparison SIG, the ToIP Foundation has just started a task force on the same thing for credential exchange protocols. See this spreadsheet
    • David Alexander will present on wallets and personal data stores at the next meeting and we will discuss further
      • Background blog post
      • Thread from Architecture SIG on personal data
      • There\u2019s also the Decentralized Web Node project that Block is leading at the Decentralized Identity Foundation
    • Next meeting is June 28, 2023
"},{"location":"meetings/2023-06-28/","title":"2023-06-28","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-06-28/#2023-06-28","title":"2023-06-28","text":""},{"location":"meetings/2023-06-28/#agenda","title":"Agenda","text":"
  • Announcements
  • Review action items from last meeting
  • Vice chair seat and responsibilities
  • Wallets and personal data stores presentation and discussion
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-06-28/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-06-28/#tac-voting-members","title":"TAC Voting Members","text":"
  • Jeremie Miller
  • Marie Austenaa
  • Stavros Kounis
  • Tracy Kuhrt
  • Troy Ronda
  • Wenjing Chu
"},{"location":"meetings/2023-06-28/#action-items","title":"Action Items","text":"
  • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
  • Credential Format Comparison SIG: Work with Torsten to get GitHub repo transferred to OpenWallet Foundation -- in progress
  • Review Farmworker Wallet OS project proposal - all
"},{"location":"meetings/2023-06-28/#meeting-minutes","title":"Meeting Minutes","text":"
  • Announcements

    • Credential Format Comparison SIG will meet on Wednesdays at 4pm CEST on alternate weeks to the TAC. Kickoff meeting planned for July 7th.
    • OID4VC Due Diligence task force will meet weekly on Wednesdays at 5pm CEST.
    • Pete Cooling was introduced as Visa's TAC voting representative.
  • Review action items from last meeting

    • Determine vice chair language -- completed
    • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
    • Credential Format Comparison SIG: Work with Torsten to get GitHub repo transferred to OpenWallet Foundation -- in progress
  • Vice chair seat and responsibilities

    • RESOLVED: That the Vice Chair Seat and Responsibilities is hereby confirmed, approved, and adopted.
      • Unanimously approved by the present TAC voting members.
      • Voting schedule
        • Call for nominations: June 28
        • End of call for nominations: July 5, Noon PT
        • A ballot will be distributed on: July 5 by end of day PT
        • The election will be completed on: July 11, Noon PT
        • Election results are announced at the July 12 meeting
      • If you would like to submit your nomination for TAC Vice Chair, please create an issue at https://github.com/openwallet-foundation/tac/issues
        • Title of issue: [NOMINATION]: 2023 Vice Chair - Name
        • Include a short bio, outline your qualifications, and provide a statement explaining why you would be a good choice for the seat
  • Wallets and personal data stores

    • Background blog post
    • Thread from Architecture SIG on personal data
    • Presentation by David Alexander
  • Call for code from the community

    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
  • Open discussion and next steps

    • Next meeting is July 12, 2023
"},{"location":"meetings/2023-07-12/","title":"2023-07-12","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/2023-07-12/#2023-07-12","title":"2023-07-12","text":""},{"location":"meetings/2023-07-12/#agenda","title":"Agenda","text":"
  • Announcements
  • Review action items from last meeting
  • Vice Chair
  • Farmworker Wallet OS project proposal
  • Call for code from the community
  • Open discussion and next steps
"},{"location":"meetings/2023-07-12/#links","title":"Links","text":"
  • slides
  • recording
"},{"location":"meetings/2023-07-12/#tac-voting-members","title":"TAC Voting Members","text":"
  • Jeremie Miller
  • Pete Cooling
  • Stavros Kounis
  • Tracy Kuhrt
  • Troy Ronda
  • Wenjing Chu
"},{"location":"meetings/2023-07-12/#action-items","title":"Action Items","text":"
  • Review Farmworker Wallet OS project proposal - all
  • Review the proposed license of Farmworker Wallet OS project with LF legal - Jenn
"},{"location":"meetings/2023-07-12/#meeting-minutes","title":"Meeting Minutes","text":"
  • Announcements

    • Credential Format Comparison SIG will meet on Wednesdays at 4pm CEST on alternate weeks to the TAC
      • Data moved from spreadsheet to github.io site
    • OID4VC Due Diligence task force will meet weekly on Wednesdays at 5pm CEST
    • Architecture SIG meets weekly on Mondays at 11am US/Pacific
    • Invitation to fully remote ISO/IEC JTC 1/SC 17 18013-7 Interoperability Event
    • For Associate non-profit members of the OpenWallet Foundation: voting is now open to select the Associate Representative for the Governing Board. Please email operations@openwallet.foundation if you have any questions about your organization's participation in this vote.
  • Review action items from last meeting

    • Work with Daniel to transfer SD-JWT Python repo to openwallet-foundation-labs organization -- in progress
    • Credential Format Comparison SIG: Work with Torsten to get GitHub repo transferred to OpenWallet Foundation -- completed (new repo created)
    • Review Farmworker Wallet OS project proposal - all
  • Vice Chair

    • RESOLVED: That the voting schedule for vice chair is hereby revised, approved, and adopted as specified.
      • Revised voting schedule
        • Call for nominations: July 12
        • End of call for nominations: August 2, Noon PT
        • A ballot will be distributed on: August 2 by end of day PT
        • The election will be completed on: August 8, Noon PT
        • Election results are announced at the August 9 meeting
      • Unanimously approved by the present TAC voting members.
  • Farmworker Wallet OS project proposal

    • Video shared on Discord
    • Question asking for clarification of the scope of the contribution
    • Concerns raised about the licensing terms of the generated output from Mendix
      • Mendix does not make any intellectual property claims on the output
    • Question raised about the proposed license that will need to be run past LF legal and the Governing Board
    • Need to consider naming of the repos to ensure that it allows people to determine that they are part of the same project
    • Question raised about the difference between the Aries SDK proposed to be part of this project and the one in Hyperledger
      • The one in this project is a wrapper around the SDK in Hyperledger that can be used by Mendix developers
    • Continue conversation on the pull request
  • Call for code from the community

    • If you know of any potential projects that might be of interest to the OpenWallet Foundation, please let a staff member know so that they can follow up
  • Open discussion and next steps

    • Next meeting is July 26, 2023
"},{"location":"meetings/YYYY-mm-dd/","title":"YYYY mm dd","text":"

Reminder

These meetings are covered by the Antitrust Policy and the Code of Conduct.

"},{"location":"meetings/YYYY-mm-dd/#yyyy-mm-dd","title":"YYYY-mm-dd","text":""},{"location":"meetings/YYYY-mm-dd/#agenda","title":"Agenda","text":"
  • Include agenda items here.
"},{"location":"meetings/YYYY-mm-dd/#notes","title":"Notes","text":"
  • Include discussion notes here.
"},{"location":"meetings/YYYY-mm-dd/#recording","title":"Recording","text":"
  • link to recording
"},{"location":"task-forces/","title":"Task Forces","text":"

A task force is a group that is focused on a task with limited scope and fixed time to complete. Unlike a special interest group, a task force will have a specific set of deliverables or work products that it will create and be limited in time to completion. A task force can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

Tip

If you would like to propose a Task Force, please see the task force proposal process.

"},{"location":"task-forces/#active-task-forces","title":"Active Task Forces","text":"
  • OID4VC Due Diligence
"},{"location":"task-forces/OID4VC-due-diligence/","title":"OID4VC Due Diligence Task Force","text":"

Currently, the OID4VC components for implementing decentralized identities such as OID4VCI and OID4VP are gaining traction, especially in Europe. These specifications are required by the European digital identity Architectural Reference Framework but also getting significant attention outside of Europe.

This task force will investigate the specifications belonging to the OID4VC family thoroughly, check the existing implementations, and start the preliminary work for potentially creating/hosting a reference implementation or a framework that can be used by a wider community for application implementations.

This task force was accepted by the TAC on May 31, 2023. See OID4VC Due Diligence Task Force Proposal for more details.

"},{"location":"task-forces/OID4VC-due-diligence/#participating","title":"Participating","text":"

This task force is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

If you are interested in participating, please join the OpenWallet Foundation Discord and participate in the discussion in the #oid4vc-due-diligence-tf channel.

"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..0f8724ef --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..d3944e8dd94145cb47e14619c074e8a71c599ac2 GIT binary patch literal 127 zcmV-_0D%7=iwFqO(Y9m)|8r?{Wo=<_E_iKh04<9_3V)_WXo8&M?ytk3HC}0~zlG)Vu + + + + + + + + + + + + + + + + + + + + + + OID4VC Due Diligence - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

OID4VC Due Diligence Task Force

+

Currently, the OID4VC components for implementing decentralized identities such as OID4VCI and OID4VP are gaining traction, especially in Europe. These specifications are required by the European digital identity Architectural Reference Framework but also getting significant attention outside of Europe.

+

This task force will investigate the specifications belonging to the OID4VC family thoroughly, check the existing implementations, and start the preliminary work for potentially creating/hosting a reference implementation or a framework that can be used by a wider community for application implementations.

+

This task force was accepted by the TAC on May 31, 2023. See OID4VC Due Diligence Task Force Proposal for more details.

+

Participating

+

This task force is an open group. Anyone in the OpenWallet Foundation community can join and participate. There is no formal sign up process. Just show up and participate.

+

If you are interested in participating, please join the OpenWallet Foundation Discord and participate in the discussion in the #oid4vc-due-diligence-tf channel.

+ + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/task-forces/index.html b/task-forces/index.html new file mode 100644 index 00000000..0ccf9528 --- /dev/null +++ b/task-forces/index.html @@ -0,0 +1,1795 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - Technical Advisory Council + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + +

Task Forces

+

A task force is a group that is focused on a task with limited scope and fixed time to complete. Unlike a special interest group, a task force will have a specific set of deliverables or work products that it will create and be limited in time to completion. A task force can be created by anyone in the OpenWallet Foundation community and must be proposed to and approved by the TAC.

+
+

Tip

+

If you would like to propose a Task Force, please see the task force proposal process.

+
+

Active Task Forces

+ + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file