dorfl 0.13.2 → 0.13.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/claim-cas.d.ts.map +1 -1
- package/dist/claim-cas.js +39 -0
- package/dist/claim-cas.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/complete.d.ts.map +1 -1
- package/dist/complete.js +9 -2
- package/dist/complete.js.map +1 -1
- package/dist/cwd-section.d.ts +40 -0
- package/dist/cwd-section.d.ts.map +1 -1
- package/dist/cwd-section.js +111 -5
- package/dist/cwd-section.js.map +1 -1
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +56 -0
- package/dist/format.js.map +1 -1
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +16 -4
- package/dist/frontmatter.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/item-lock.d.ts +167 -0
- package/dist/item-lock.d.ts.map +1 -1
- package/dist/item-lock.js +255 -1
- package/dist/item-lock.js.map +1 -1
- package/dist/needs-attention.d.ts +216 -1
- package/dist/needs-attention.d.ts.map +1 -1
- package/dist/needs-attention.js +595 -2
- package/dist/needs-attention.js.map +1 -1
- package/dist/reconcile-terminal.d.ts +97 -0
- package/dist/reconcile-terminal.d.ts.map +1 -0
- package/dist/reconcile-terminal.js +88 -0
- package/dist/reconcile-terminal.js.map +1 -0
- package/dist/scan.d.ts +17 -0
- package/dist/scan.d.ts.map +1 -1
- package/dist/scan.js +51 -2
- package/dist/scan.js.map +1 -1
- package/dist/status.d.ts +28 -0
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +79 -2
- package/dist/status.js.map +1 -1
- package/package.json +1 -1
- package/src/claim-cas.ts +40 -0
- package/src/cli.ts +18 -1
- package/src/complete.ts +9 -2
- package/src/cwd-section.ts +157 -4
- package/src/format.ts +72 -0
- package/src/frontmatter.ts +16 -4
- package/src/index.ts +2 -0
- package/src/item-lock.ts +369 -1
- package/src/needs-attention.ts +783 -0
- package/src/reconcile-terminal.ts +180 -0
- package/src/scan.ts +82 -5
- package/src/status.ts +131 -6
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AACtC,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAE7E,YAAY,EACX,MAAM,EACN,aAAa,EACb,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,YAAY,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,cAAc,EACd,WAAW,EACX,UAAU,EACV,UAAU,EACV,iBAAiB,GACjB,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,iBAAiB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACX,eAAe,EACf,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,aAAa,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,kBAAkB,GAClB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACN,yBAAyB,EACzB,kBAAkB,GAClB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAErE,YAAY,EACX,mBAAmB,EACnB,mBAAmB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,cAAc,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAEnE,YAAY,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACN,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,WAAW,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,UAAU,GACV,MAAM,cAAc,CAAC;AAEtB,YAAY,EACX,SAAS,EACT,kBAAkB,EAClB,iBAAiB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAEjE,YAAY,EACX,aAAa,EACb,6BAA6B,EAC7B,4BAA4B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,iBAAiB,EAAE,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAE7E,YAAY,EAAC,cAAc,EAAE,aAAa,EAAC,MAAM,eAAe,CAAC;AACjE,OAAO,EAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAE9E,OAAO,EACN,uBAAuB,EACvB,yBAAyB,GACzB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,eAAe,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE7D,YAAY,EACX,QAAQ,EACR,YAAY,EACZ,kBAAkB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,YAAY,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAC,mBAAmB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAExE,YAAY,EACX,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACX,iBAAiB,EACjB,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,eAAe,EACf,kBAAkB,EAClB,yBAAyB,GACzB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACX,eAAe,EACf,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,iBAAiB,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE/D,YAAY,EACX,iBAAiB,EACjB,QAAQ,EACR,kBAAkB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAElD,YAAY,EACX,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,kCAAkC,EAClC,mCAAmC,EACnC,mCAAmC,EACnC,oCAAoC,EACpC,mBAAmB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAC,kBAAkB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAElE,YAAY,EAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAC,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAC,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,WAAW,CAAC;AAE7E,YAAY,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,gBAAgB,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,kBAAkB,GAClB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACX,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,aAAa,EACb,WAAW,EACX,SAAS,EACT,QAAQ,EACR,eAAe,EACf,gBAAgB,GAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAC,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAC,MAAM,aAAa,CAAC;AACtE,YAAY,EACX,UAAU,EACV,UAAU,EACV,wBAAwB,EACxB,cAAc,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,iBAAiB,EAAE,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAE1E,YAAY,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,sBAAsB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,oBAAoB,EACpB,+BAA+B,EAC/B,kBAAkB,EAClB,OAAO,EACP,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,WAAW,GACX,MAAM,aAAa,CAAC;AAErB,YAAY,EAAC,SAAS,EAAE,UAAU,EAAC,MAAM,aAAa,CAAC;AACvD,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAE7C,YAAY,EACX,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,aAAa,EAAE,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAEtE,YAAY,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,cAAc,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,YAAY,EACX,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACX,UAAU,EACV,SAAS,EACT,SAAS,EACT,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,cAAc,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,eAAe,EACf,YAAY,EACZ,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,GACd,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,YAAY,CAAC;AACxE,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAExC,YAAY,EAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAC,MAAM,cAAc,CAAC;AAC7E,OAAO,EACN,aAAa,EACb,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,GACxB,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAC,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AAEhD,YAAY,EACX,eAAe,EACf,eAAe,EACf,cAAc,GACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAE9C,YAAY,EACX,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACN,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACX,SAAS,EACT,QAAQ,EACR,OAAO,EACP,SAAS,EACT,eAAe,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,SAAS,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAEnD,YAAY,EACX,QAAQ,EACR,qBAAqB,EACrB,aAAa,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,aAAa,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAE9D,YAAY,EACX,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAEzC,YAAY,EACX,KAAK,EACL,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,0BAA0B,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAExD,YAAY,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,oBAAoB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,aAAa,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAC;AAEnE,YAAY,EACX,eAAe,EACf,eAAe,EACf,eAAe,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,MAAM,EACN,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,GACzB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACX,eAAe,EACf,mBAAmB,EACnB,WAAW,GACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAEtD,YAAY,EAAC,YAAY,EAAE,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACvE,OAAO,EACN,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,WAAW,GACX,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAEhD,YAAY,EAAC,mBAAmB,EAAE,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EACN,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,EACf,aAAa,EACb,2BAA2B,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACX,qBAAqB,EACrB,oBAAoB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAErD,YAAY,EACX,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,mBAAmB,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACN,sBAAsB,EACtB,qBAAqB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EAAC,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EACN,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,SAAS,EACT,cAAc,EACd,aAAa,EACb,eAAe,EACf,eAAe,GACf,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACX,aAAa,EACb,WAAW,EACX,YAAY,EACZ,OAAO,GACP,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,WAAW,EACX,QAAQ,EACR,cAAc,EACd,eAAe,GACf,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAC,gBAAgB,EAAE,eAAe,EAAC,MAAM,iBAAiB,CAAC;AACvE,OAAO,EACN,SAAS,EACT,aAAa,EACb,eAAe,EACf,cAAc,GACd,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAC,wBAAwB,EAAC,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAC,mBAAmB,EAAE,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAE3E,YAAY,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACN,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,aAAa,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAC,4BAA4B,EAAC,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAE1D,YAAY,EACX,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,WAAW,EACX,YAAY,GACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACX,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,cAAc,GACd,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACvB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,KAAK,GACL,MAAM,UAAU,CAAC;AAClB,OAAO,EAAC,OAAO,EAAE,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAEtD,YAAY,EAAC,gBAAgB,EAAE,eAAe,EAAC,MAAM,aAAa,CAAC;AACnE,OAAO,EACN,SAAS,EACT,qBAAqB,EACrB,wBAAwB,EACxB,6BAA6B,GAC7B,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACX,aAAa,EACb,aAAa,EACb,eAAe,EACf,UAAU,EACV,wBAAwB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,2BAA2B,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,KAAK,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,GACR,MAAM,SAAS,CAAC;AACjB,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,OAAO,EACP,EAAE,EACF,YAAY,GACZ,MAAM,SAAS,CAAC;AACjB,YAAY,EACX,aAAa,EACb,eAAe,EACf,wBAAwB,EACxB,yBAAyB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAExD,YAAY,EACX,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,cAAc,EACd,aAAa,EACb,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,eAAe,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,SAAS,EACT,aAAa,EACb,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EAAC,SAAS,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AACxE,OAAO,EAAC,MAAM,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAEjD,YAAY,EACX,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,sBAAsB,EACtB,YAAY,EACZ,WAAW,EACX,WAAW,EACX,aAAa,EACb,mBAAmB,GACnB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACX,4BAA4B,EAC5B,2BAA2B,EAC3B,sBAAsB,EACtB,qBAAqB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,qBAAqB,EACrB,eAAe,EACf,aAAa,GACb,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACX,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,eAAe,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,GACf,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACX,wBAAwB,EACxB,2BAA2B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,4BAA4B,EAC5B,qBAAqB,EACrB,yBAAyB,GACzB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACX,eAAe,EACf,kBAAkB,GAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,GACxB,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,EACf,+BAA+B,GAC/B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,WAAW,EAAE,wBAAwB,EAAC,MAAM,gBAAgB,CAAC;AAErE,YAAY,EACX,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,IAAI,mBAAmB,EACtC,WAAW,EACX,iBAAiB,EACjB,eAAe,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,cAAc,GACd,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAC,sBAAsB,EAAC,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAC,eAAe,EAAE,uBAAuB,EAAC,MAAM,wBAAwB,CAAC;AAEhF,YAAY,EACX,aAAa,EACb,gBAAgB,EAChB,eAAe,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAErD,YAAY,EACX,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,aAAa,EAAE,sBAAsB,EAAC,MAAM,qBAAqB,CAAC;AAC1E,YAAY,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -29,7 +29,7 @@ export { selectCandidates } from './select.js';
|
|
|
29
29
|
export { taskableSpecs, selectPrioritised } from './select-priority.js';
|
|
30
30
|
export { performClaim } from './claim-cas.js';
|
|
31
31
|
export { acquireAdvancingLock, releaseAdvancingLock, createItemThroughCas, nextCasContentionDelayMs, runCasContentionLoop, INTERACTIVE_CAS_CONTENTION, LIFECYCLE_CAS_CONTENTION, } from './advancing-lock.js';
|
|
32
|
-
export { LOCK_REF_PREFIX, lockEntryFor, itemLockRef, acquireItemLock, releaseItemLock, releaseHeldItemLock, readItemLock, reconcileItemLockAgainstMain, classifyItemLockAgainstMain, reportItemLocks, formatItemLockReport, itemLockReportNeedsAttention, itemFromLockEntry, terminalMainPaths, listItemLocks, listItemLockEntries, heldTaskSlugs, resolveLockHolder, serialiseLockEntry, parseLockEntry, } from './item-lock.js';
|
|
32
|
+
export { LOCK_REF_PREFIX, lockEntryFor, itemLockRef, acquireItemLock, releaseItemLock, releaseHeldItemLock, readItemLock, reconcileItemLockAgainstMain, reconcileTerminalItemLocks, classifyTerminalItemLocks, classifyItemLockAgainstMain, reportItemLocks, formatItemLockReport, itemLockReportNeedsAttention, itemFromLockEntry, terminalMainPaths, listItemLocks, listItemLockEntries, heldTaskSlugs, resolveLockHolder, serialiseLockEntry, parseLockEntry, } from './item-lock.js';
|
|
33
33
|
export { performStart } from './start.js';
|
|
34
34
|
export { performWorkOn, suggestHumanWorktreesDir, loadHumanWorktreesDir, persistHumanWorktreesDir, } from './work-on.js';
|
|
35
35
|
export { resolveReadiness } from './readiness.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/item-lock.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type RunResult } from './git.js';
|
|
1
2
|
import { type SidecarType } from './sidecar.js';
|
|
2
3
|
/**
|
|
3
4
|
* The **unified item-lock module** (spec `ledger-status-per-item-lock-refs`, ADR
|
|
@@ -436,6 +437,159 @@ export declare function reconcileItemLockAgainstMain(opts: ReleaseOptions): Prom
|
|
|
436
437
|
* `error`).
|
|
437
438
|
*/
|
|
438
439
|
export declare function classifyItemLockAgainstMain(opts: ReleaseOptions): Promise<ReconcileResult>;
|
|
440
|
+
/**
|
|
441
|
+
* The READ-ONLY classification of every held per-item lock against the arbiter's
|
|
442
|
+
* `main`, partitioned by whether the lock's item has come to REST. It performs
|
|
443
|
+
* NO writes: it is what the read-only surfaces (`status`, `scan`) use to tell a
|
|
444
|
+
* genuinely in-flight hold apart from one whose work is already finished and
|
|
445
|
+
* merged. {@link reconcileTerminalItemLocks} is the WRITE twin that acts on the
|
|
446
|
+
* same classification, so the report and the release can never disagree about
|
|
447
|
+
* WHAT a lock is; only whether they act on it.
|
|
448
|
+
*/
|
|
449
|
+
/** Shared options for the batch terminal-lock classify/sweep pair. */
|
|
450
|
+
export interface TerminalLockScanOptions {
|
|
451
|
+
/**
|
|
452
|
+
* The ref holding the ARBITER's authoritative `main`, whose tree the terminal
|
|
453
|
+
* probe reads. Defaults to `<arbiter>/main`, which is correct in a WORKING
|
|
454
|
+
* CLONE.
|
|
455
|
+
*
|
|
456
|
+
* A BARE HUB MIRROR (`git clone --bare`, see `repo-mirror.ts`) has NO
|
|
457
|
+
* `remote.origin.fetch` refspec and therefore no `refs/remotes/*` namespace at
|
|
458
|
+
* all, so its copy of the arbiter's main is `refs/heads/main`. Mirror callers
|
|
459
|
+
* MUST pass `'main'`, the same ref `lintRefLedger` and `fetchMirrorMainOrWarn`
|
|
460
|
+
* already read there. Getting this wrong used to be SILENT (every probe failed
|
|
461
|
+
* with `invalid object name`, so every lock classified as in-flight and the
|
|
462
|
+
* sweep became a permanent no-op); `classifyTerminalItemLocks` now guards it
|
|
463
|
+
* explicitly and reports it as an error instead.
|
|
464
|
+
*/
|
|
465
|
+
mainRef?: string;
|
|
466
|
+
/**
|
|
467
|
+
* Skip the `mainRef` refresh because the CALLER has just done it. Set by the
|
|
468
|
+
* combined pass ({@link reconcileTerminalState}), which refreshes once and
|
|
469
|
+
* runs both sub-passes against that ONE snapshot, so the same ref is not
|
|
470
|
+
* fetched twice per claim.
|
|
471
|
+
*/
|
|
472
|
+
mainAlreadyFresh?: boolean;
|
|
473
|
+
}
|
|
474
|
+
export interface TerminalLockClassification {
|
|
475
|
+
/**
|
|
476
|
+
* Locks whose item is TERMINAL on `<arbiter>/main` (per
|
|
477
|
+
* {@link terminalMainPaths}): the work is durably landed, so the hold is stale
|
|
478
|
+
* and RELEASABLE. These are the locks a completed propose PR leaves behind.
|
|
479
|
+
*/
|
|
480
|
+
terminal: LockEntry[];
|
|
481
|
+
/**
|
|
482
|
+
* Locks to KEEP: the item is not at rest on `main` (a live build, an open PR,
|
|
483
|
+
* a parked item), or the entry is a pre-cutover name with no derivable
|
|
484
|
+
* item-form and so cannot be classified at all.
|
|
485
|
+
*/
|
|
486
|
+
inFlight: LockEntry[];
|
|
487
|
+
/** Locks whose classification faulted; treated as KEEP (the safe direction). */
|
|
488
|
+
errors: {
|
|
489
|
+
entry: string;
|
|
490
|
+
message: string;
|
|
491
|
+
}[];
|
|
492
|
+
}
|
|
493
|
+
/**
|
|
494
|
+
* Classify every held per-item lock against the arbiter's `main`, WITHOUT
|
|
495
|
+
* touching anything (fix for the propose-path lock leak; observation
|
|
496
|
+
* `every-completed-task-leaves-its-lock-ref-reporting-in-progress`).
|
|
497
|
+
*
|
|
498
|
+
* THE TERMINAL TEST IS THE ONLY TEST, and it is deliberately the narrowest one
|
|
499
|
+
* that identifies finished work: a lock is `terminal` iff the item's body rests
|
|
500
|
+
* in a terminal folder on `<arbiter>/main` per {@link terminalMainPaths} (a task
|
|
501
|
+
* in `tasks/done/` or `tasks/cancelled/`, a spec in `specs/tasked/` or
|
|
502
|
+
* `specs/dropped/`). It is NOT keyed on a branch, a PR's existence, a PR's merge
|
|
503
|
+
* status, the holder, or age: an item on an OPEN PR still shows its body in the
|
|
504
|
+
* ready pool on `main`, so it classifies `inFlight` and its lock stays held.
|
|
505
|
+
* Calling a NON-terminal lock releasable would let two claimants build the same
|
|
506
|
+
* item, which is far worse than the leak being fixed, so every uncertainty
|
|
507
|
+
* (unreadable `main`, an unclassifiable entry, any fault) resolves to KEEP.
|
|
508
|
+
*
|
|
509
|
+
* COST is one `ls-remote` + one pruned lock-ref fetch (via
|
|
510
|
+
* {@link listItemLockEntries}, which the read paths call regardless) plus ONE
|
|
511
|
+
* `git fetch` of `main`, then a purely LOCAL `cat-file -e` per lock. It is
|
|
512
|
+
* deliberately not a loop over {@link classifyItemLockAgainstMain}, which
|
|
513
|
+
* fetches twice per lock (~100 fetches for a 26-lock corpus, far too slow for
|
|
514
|
+
* `status`).
|
|
515
|
+
*
|
|
516
|
+
* Best-effort and NEVER throws.
|
|
517
|
+
*/
|
|
518
|
+
export declare function classifyTerminalItemLocks(cwd: string, arbiter?: string, env?: NodeJS.ProcessEnv, opts?: TerminalLockScanOptions): Promise<TerminalLockClassification>;
|
|
519
|
+
/**
|
|
520
|
+
* What a {@link reconcileTerminalItemLocks} sweep did, by lock `<entry>`.
|
|
521
|
+
* `released` + `kept` + `errors` partition the locks that were held on the
|
|
522
|
+
* arbiter when the sweep started.
|
|
523
|
+
*/
|
|
524
|
+
export interface TerminalReconcileReport {
|
|
525
|
+
/** Entries whose item is TERMINAL on `<arbiter>/main` and whose ref was deleted. */
|
|
526
|
+
released: string[];
|
|
527
|
+
/** Entry NAMES left HELD: the item is not terminal on `main` (in flight), the
|
|
528
|
+
* entry could not be classified (a pre-cutover name with no item-form), or a
|
|
529
|
+
* terminal lock's release was REFUSED. Mirrors {@link stillHeld}. */
|
|
530
|
+
kept: string[];
|
|
531
|
+
/**
|
|
532
|
+
* The FULL entries still held after the sweep: {@link kept} as parsed
|
|
533
|
+
* {@link LockEntry} objects, so a caller can render its in-flight surface
|
|
534
|
+
* DIRECTLY from this result instead of re-listing the refs (which would cost a
|
|
535
|
+
* second `ls-remote` + fetch and open a TOCTOU window between the two reads).
|
|
536
|
+
*/
|
|
537
|
+
stillHeld: LockEntry[];
|
|
538
|
+
/** Entries whose reconciliation faulted (left HELD, the safe direction). A
|
|
539
|
+
* REFUSED release appears both here and in {@link stillHeld}: the lock is still
|
|
540
|
+
* held, and the caller is told why rather than silently losing it. */
|
|
541
|
+
errors: {
|
|
542
|
+
entry: string;
|
|
543
|
+
message: string;
|
|
544
|
+
}[];
|
|
545
|
+
}
|
|
546
|
+
/**
|
|
547
|
+
* LAZY RECONCILIATION: the WRITE twin of {@link classifyTerminalItemLocks}. It
|
|
548
|
+
* takes that exact classification and RELEASES the `terminal` locks. This is the
|
|
549
|
+
* fix for the propose-path lock leak (observation
|
|
550
|
+
* `every-completed-task-leaves-its-lock-ref-reporting-in-progress`).
|
|
551
|
+
*
|
|
552
|
+
* THE BUG THIS EXISTS FOR. `complete --propose` deliberately KEEPS the per-item
|
|
553
|
+
* lock held (the done-move is on the PR branch, not on `main`, so the item is
|
|
554
|
+
* still in the pool and must stay excluded) and promises "It is released when the
|
|
555
|
+
* PR merges (reconciled against main)". That second half NEVER HAPPENED. Nobody
|
|
556
|
+
* runs a dorfl process at the moment a human clicks merge on GitHub and there is
|
|
557
|
+
* no daemon, so a release scheduled for merge-time can never fire. Meanwhile
|
|
558
|
+
* {@link reconcileItemLockAgainstMain} (which implements exactly the right
|
|
559
|
+
* decision) was reachable ONLY from the opt-in `gc --ledger --reap-stale-locks`
|
|
560
|
+
* sweep. An operator driving `do`/`complete` by hand never runs it, so every
|
|
561
|
+
* propose build leaked its lock ref forever and `status` reported finished work
|
|
562
|
+
* as in-progress permanently.
|
|
563
|
+
*
|
|
564
|
+
* WHERE THIS IS CALLED, and why not from the read commands. The merge event is
|
|
565
|
+
* not observable, but its CONSEQUENCE on `main` is, and that consequence is
|
|
566
|
+
* durable, so a late sweep converges just as well as a timely one. It therefore
|
|
567
|
+
* runs from the paths that ALREADY WRITE to the arbiter and already run on every
|
|
568
|
+
* unit of work: the CLAIM path (`do`/`claim`). `status` and `scan` stay strictly
|
|
569
|
+
* READ-ONLY and use {@link classifyTerminalItemLocks} to REPORT a finished item's
|
|
570
|
+
* lock as released-pending rather than as in-progress; they perform this sweep
|
|
571
|
+
* only under an explicit `--reconcile-locks` flag. Putting the automatic release
|
|
572
|
+
* on a write path (rather than behind a flag on a read path) is what makes the
|
|
573
|
+
* fix real: a flag nobody is routed to is what produced the leak in the first
|
|
574
|
+
* place, since `gc --ledger` had been reporting these locks and printing the
|
|
575
|
+
* `release-lock` command all along.
|
|
576
|
+
*
|
|
577
|
+
* SCOPE FENCE: this clears the TERMINAL class ONLY. The OTHER orphan class
|
|
578
|
+
* {@link reconcileItemLockAgainstMain} knows about (the crash-window orphan:
|
|
579
|
+
* non-terminal but SURFACED on `main` with `needsAnswers:true` + sidecar) is
|
|
580
|
+
* deliberately NOT swept here and remains the explicit
|
|
581
|
+
* `gc --ledger --reap-stale-locks` sweep's business. Terminal-on-`main` is a
|
|
582
|
+
* FACT about durable state that proves the work is finished; "surfaced" is a
|
|
583
|
+
* crash inference, and the no-auto-sweep trust model is worth keeping for it.
|
|
584
|
+
*
|
|
585
|
+
* SAFETY. Every delete is the SAME `--force-with-lease` delete
|
|
586
|
+
* ({@link leasedDeleteLockRef}) `release-lock`/requeue use, never a blind
|
|
587
|
+
* `--force`, so a lock a concurrent writer moved between our read and our write
|
|
588
|
+
* is reported, not stolen. The whole sweep is best-effort and NEVER throws: any
|
|
589
|
+
* fault leaves the lock HELD, which is the safe direction. It is idempotent:
|
|
590
|
+
* re-running over a reconciled arbiter is a clean empty report.
|
|
591
|
+
*/
|
|
592
|
+
export declare function reconcileTerminalItemLocks(cwd: string, arbiter?: string, env?: NodeJS.ProcessEnv, opts?: TerminalLockScanOptions): Promise<TerminalReconcileReport>;
|
|
439
593
|
/** One lingering lock in the `gc --ledger` orphaned-lock REPORT: the held entry
|
|
440
594
|
* plus the read-only cross-substrate {@link ReconcileOutcome} classification of
|
|
441
595
|
* it against the authoritative `main` durable record. Reported, NEVER cleared
|
|
@@ -620,6 +774,19 @@ export declare function itemFromLockEntry(entry: string): string;
|
|
|
620
774
|
* copy-pasteable item-form hint or the literal-`--entry` hint.
|
|
621
775
|
*/
|
|
622
776
|
export declare function hasCurrentItemForm(entry: string): boolean;
|
|
777
|
+
/**
|
|
778
|
+
* Refresh `mainRef` from the arbiter with an EXPLICIT refspec that writes
|
|
779
|
+
* EXACTLY the ref the terminal probe will read, so the read can never land on a
|
|
780
|
+
* ref the fetch did not populate (the bare-mirror trap documented on
|
|
781
|
+
* {@link isTerminalAtRef}; the same stance as `arbiter-refs.ts`). A plain
|
|
782
|
+
* `git fetch <arbiter>` is deliberately NOT used: in a bare mirror it writes
|
|
783
|
+
* `refs/heads/*` and never populates `refs/remotes/*`, and in a working clone it
|
|
784
|
+
* depends on whatever refspec happens to be configured.
|
|
785
|
+
*
|
|
786
|
+
* Returns the git result so the caller can treat a failure as "cannot prove
|
|
787
|
+
* anything terminal" and keep every lock.
|
|
788
|
+
*/
|
|
789
|
+
export declare function refreshMainRef(mainRef: string, arbiter: string, cwd: string, env: NodeJS.ProcessEnv | undefined): Promise<RunResult>;
|
|
623
790
|
/** List the entries (`<type>-<slug>`) currently locked on the arbiter (the
|
|
624
791
|
* stuck-lock report / `status` read path). */
|
|
625
792
|
export declare function listItemLocks(cwd: string, arbiter?: string, env?: NodeJS.ProcessEnv): Promise<string[]>;
|
package/dist/item-lock.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-lock.d.ts","sourceRoot":"","sources":["../src/item-lock.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"item-lock.d.ts","sourceRoot":"","sources":["../src/item-lock.ts"],"names":[],"mappings":"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"}
|
package/dist/item-lock.js
CHANGED
|
@@ -995,6 +995,212 @@ export async function classifyItemLockAgainstMain(opts) {
|
|
|
995
995
|
};
|
|
996
996
|
}
|
|
997
997
|
}
|
|
998
|
+
/**
|
|
999
|
+
* Classify every held per-item lock against the arbiter's `main`, WITHOUT
|
|
1000
|
+
* touching anything (fix for the propose-path lock leak; observation
|
|
1001
|
+
* `every-completed-task-leaves-its-lock-ref-reporting-in-progress`).
|
|
1002
|
+
*
|
|
1003
|
+
* THE TERMINAL TEST IS THE ONLY TEST, and it is deliberately the narrowest one
|
|
1004
|
+
* that identifies finished work: a lock is `terminal` iff the item's body rests
|
|
1005
|
+
* in a terminal folder on `<arbiter>/main` per {@link terminalMainPaths} (a task
|
|
1006
|
+
* in `tasks/done/` or `tasks/cancelled/`, a spec in `specs/tasked/` or
|
|
1007
|
+
* `specs/dropped/`). It is NOT keyed on a branch, a PR's existence, a PR's merge
|
|
1008
|
+
* status, the holder, or age: an item on an OPEN PR still shows its body in the
|
|
1009
|
+
* ready pool on `main`, so it classifies `inFlight` and its lock stays held.
|
|
1010
|
+
* Calling a NON-terminal lock releasable would let two claimants build the same
|
|
1011
|
+
* item, which is far worse than the leak being fixed, so every uncertainty
|
|
1012
|
+
* (unreadable `main`, an unclassifiable entry, any fault) resolves to KEEP.
|
|
1013
|
+
*
|
|
1014
|
+
* COST is one `ls-remote` + one pruned lock-ref fetch (via
|
|
1015
|
+
* {@link listItemLockEntries}, which the read paths call regardless) plus ONE
|
|
1016
|
+
* `git fetch` of `main`, then a purely LOCAL `cat-file -e` per lock. It is
|
|
1017
|
+
* deliberately not a loop over {@link classifyItemLockAgainstMain}, which
|
|
1018
|
+
* fetches twice per lock (~100 fetches for a 26-lock corpus, far too slow for
|
|
1019
|
+
* `status`).
|
|
1020
|
+
*
|
|
1021
|
+
* Best-effort and NEVER throws.
|
|
1022
|
+
*/
|
|
1023
|
+
export async function classifyTerminalItemLocks(cwd, arbiter = 'origin', env, opts = {}) {
|
|
1024
|
+
const out = {
|
|
1025
|
+
terminal: [],
|
|
1026
|
+
inFlight: [],
|
|
1027
|
+
errors: [],
|
|
1028
|
+
};
|
|
1029
|
+
// DEFAULT `<arbiter>/main` (the WORKING-CLONE shape). A BARE HUB MIRROR must
|
|
1030
|
+
// pass `mainRef: 'main'`, see `isTerminalAtRef` for why reading the wrong ref
|
|
1031
|
+
// silently classifies everything as in-flight.
|
|
1032
|
+
const mainRef = opts.mainRef ?? `${arbiter}/main`;
|
|
1033
|
+
let entries;
|
|
1034
|
+
try {
|
|
1035
|
+
entries = await listItemLockEntries(cwd, arbiter, env);
|
|
1036
|
+
}
|
|
1037
|
+
catch {
|
|
1038
|
+
return out;
|
|
1039
|
+
}
|
|
1040
|
+
if (entries.length === 0) {
|
|
1041
|
+
return out;
|
|
1042
|
+
}
|
|
1043
|
+
// ONE refresh of `mainRef` for the WHOLE pass (the durable record every
|
|
1044
|
+
// terminal probe below reads), via an EXPLICIT refspec that writes exactly
|
|
1045
|
+
// that ref. If it fails we cannot prove ANY item terminal, so every lock is
|
|
1046
|
+
// KEPT rather than guessed at.
|
|
1047
|
+
const fetched = opts.mainAlreadyFresh
|
|
1048
|
+
? { status: 0, stdout: '', stderr: '' }
|
|
1049
|
+
: await refreshMainRef(mainRef, arbiter, cwd, env);
|
|
1050
|
+
if (fetched.status !== 0) {
|
|
1051
|
+
for (const lock of entries) {
|
|
1052
|
+
out.errors.push({
|
|
1053
|
+
entry: lock.entry,
|
|
1054
|
+
message: `could not refresh ${mainRef} from ${arbiter} to classify against (treated as HELD): ${fetched.stderr.trim()}`,
|
|
1055
|
+
});
|
|
1056
|
+
}
|
|
1057
|
+
return out;
|
|
1058
|
+
}
|
|
1059
|
+
// GUARD against the silent-no-op class: if the ref we are about to probe does
|
|
1060
|
+
// not resolve AT ALL, every `cat-file -e` below fails with `invalid object
|
|
1061
|
+
// name`, which is indistinguishable from "the item is not terminal". That
|
|
1062
|
+
// would classify every lock as in-flight and make the sweep a permanent no-op
|
|
1063
|
+
//, exactly the bare-mirror bug this parameter exists to fix. Fail LOUDLY into
|
|
1064
|
+
// `errors` (still keeping every lock) so a wrong ref is diagnosable, never
|
|
1065
|
+
// invisible.
|
|
1066
|
+
const mainResolves = (await gitSoft(['rev-parse', '--verify', '--quiet', mainRef], cwd, env))
|
|
1067
|
+
.status === 0;
|
|
1068
|
+
if (!mainResolves) {
|
|
1069
|
+
for (const lock of entries) {
|
|
1070
|
+
out.errors.push({
|
|
1071
|
+
entry: lock.entry,
|
|
1072
|
+
message: `'${mainRef}' does not resolve in ${cwd}, so nothing can be proven terminal (treated as HELD)`,
|
|
1073
|
+
});
|
|
1074
|
+
}
|
|
1075
|
+
return out;
|
|
1076
|
+
}
|
|
1077
|
+
for (const lock of entries) {
|
|
1078
|
+
// A pre-cutover entry (`slice-`/`prd-`) has no current item-form, so it has
|
|
1079
|
+
// no derivable terminal path, leave it for `release-lock --entry <literal>`.
|
|
1080
|
+
if (!hasCurrentItemForm(lock.entry)) {
|
|
1081
|
+
out.inFlight.push(lock);
|
|
1082
|
+
continue;
|
|
1083
|
+
}
|
|
1084
|
+
try {
|
|
1085
|
+
const { type, slug } = resolveSidecarIdentity(itemFromLockEntry(lock.entry));
|
|
1086
|
+
// Purely LOCAL probes against the single `main` snapshot fetched above.
|
|
1087
|
+
if (await isTerminalAtRef(type, slug, mainRef, cwd, env)) {
|
|
1088
|
+
out.terminal.push(lock);
|
|
1089
|
+
}
|
|
1090
|
+
else {
|
|
1091
|
+
out.inFlight.push(lock);
|
|
1092
|
+
}
|
|
1093
|
+
}
|
|
1094
|
+
catch (err) {
|
|
1095
|
+
out.errors.push({
|
|
1096
|
+
entry: lock.entry,
|
|
1097
|
+
message: err instanceof Error ? err.message : String(err),
|
|
1098
|
+
});
|
|
1099
|
+
}
|
|
1100
|
+
}
|
|
1101
|
+
return out;
|
|
1102
|
+
}
|
|
1103
|
+
/**
|
|
1104
|
+
* LAZY RECONCILIATION: the WRITE twin of {@link classifyTerminalItemLocks}. It
|
|
1105
|
+
* takes that exact classification and RELEASES the `terminal` locks. This is the
|
|
1106
|
+
* fix for the propose-path lock leak (observation
|
|
1107
|
+
* `every-completed-task-leaves-its-lock-ref-reporting-in-progress`).
|
|
1108
|
+
*
|
|
1109
|
+
* THE BUG THIS EXISTS FOR. `complete --propose` deliberately KEEPS the per-item
|
|
1110
|
+
* lock held (the done-move is on the PR branch, not on `main`, so the item is
|
|
1111
|
+
* still in the pool and must stay excluded) and promises "It is released when the
|
|
1112
|
+
* PR merges (reconciled against main)". That second half NEVER HAPPENED. Nobody
|
|
1113
|
+
* runs a dorfl process at the moment a human clicks merge on GitHub and there is
|
|
1114
|
+
* no daemon, so a release scheduled for merge-time can never fire. Meanwhile
|
|
1115
|
+
* {@link reconcileItemLockAgainstMain} (which implements exactly the right
|
|
1116
|
+
* decision) was reachable ONLY from the opt-in `gc --ledger --reap-stale-locks`
|
|
1117
|
+
* sweep. An operator driving `do`/`complete` by hand never runs it, so every
|
|
1118
|
+
* propose build leaked its lock ref forever and `status` reported finished work
|
|
1119
|
+
* as in-progress permanently.
|
|
1120
|
+
*
|
|
1121
|
+
* WHERE THIS IS CALLED, and why not from the read commands. The merge event is
|
|
1122
|
+
* not observable, but its CONSEQUENCE on `main` is, and that consequence is
|
|
1123
|
+
* durable, so a late sweep converges just as well as a timely one. It therefore
|
|
1124
|
+
* runs from the paths that ALREADY WRITE to the arbiter and already run on every
|
|
1125
|
+
* unit of work: the CLAIM path (`do`/`claim`). `status` and `scan` stay strictly
|
|
1126
|
+
* READ-ONLY and use {@link classifyTerminalItemLocks} to REPORT a finished item's
|
|
1127
|
+
* lock as released-pending rather than as in-progress; they perform this sweep
|
|
1128
|
+
* only under an explicit `--reconcile-locks` flag. Putting the automatic release
|
|
1129
|
+
* on a write path (rather than behind a flag on a read path) is what makes the
|
|
1130
|
+
* fix real: a flag nobody is routed to is what produced the leak in the first
|
|
1131
|
+
* place, since `gc --ledger` had been reporting these locks and printing the
|
|
1132
|
+
* `release-lock` command all along.
|
|
1133
|
+
*
|
|
1134
|
+
* SCOPE FENCE: this clears the TERMINAL class ONLY. The OTHER orphan class
|
|
1135
|
+
* {@link reconcileItemLockAgainstMain} knows about (the crash-window orphan:
|
|
1136
|
+
* non-terminal but SURFACED on `main` with `needsAnswers:true` + sidecar) is
|
|
1137
|
+
* deliberately NOT swept here and remains the explicit
|
|
1138
|
+
* `gc --ledger --reap-stale-locks` sweep's business. Terminal-on-`main` is a
|
|
1139
|
+
* FACT about durable state that proves the work is finished; "surfaced" is a
|
|
1140
|
+
* crash inference, and the no-auto-sweep trust model is worth keeping for it.
|
|
1141
|
+
*
|
|
1142
|
+
* SAFETY. Every delete is the SAME `--force-with-lease` delete
|
|
1143
|
+
* ({@link leasedDeleteLockRef}) `release-lock`/requeue use, never a blind
|
|
1144
|
+
* `--force`, so a lock a concurrent writer moved between our read and our write
|
|
1145
|
+
* is reported, not stolen. The whole sweep is best-effort and NEVER throws: any
|
|
1146
|
+
* fault leaves the lock HELD, which is the safe direction. It is idempotent:
|
|
1147
|
+
* re-running over a reconciled arbiter is a clean empty report.
|
|
1148
|
+
*/
|
|
1149
|
+
export async function reconcileTerminalItemLocks(cwd, arbiter = 'origin', env, opts = {}) {
|
|
1150
|
+
const classified = await classifyTerminalItemLocks(cwd, arbiter, env, opts);
|
|
1151
|
+
const report = {
|
|
1152
|
+
released: [],
|
|
1153
|
+
kept: classified.inFlight.map((l) => l.entry),
|
|
1154
|
+
// Seeded with what the classifier already decided to keep. A terminal lock
|
|
1155
|
+
// whose release is REFUSED below is appended, so `stillHeld` always reflects
|
|
1156
|
+
// the arbiter's true post-sweep state rather than an optimistic one.
|
|
1157
|
+
stillHeld: [...classified.inFlight],
|
|
1158
|
+
errors: [...classified.errors],
|
|
1159
|
+
};
|
|
1160
|
+
/** A terminal lock we could not remove is STILL HELD, so it must appear in
|
|
1161
|
+
* BOTH the kept set and the in-flight surface, never silently vanish. */
|
|
1162
|
+
const keepUnreleased = (lock) => {
|
|
1163
|
+
report.kept.push(lock.entry);
|
|
1164
|
+
report.stillHeld.push(lock);
|
|
1165
|
+
};
|
|
1166
|
+
for (const lock of classified.terminal) {
|
|
1167
|
+
const ref = itemLockRef(lock.entry);
|
|
1168
|
+
try {
|
|
1169
|
+
const rev = await gitSoft(['rev-parse', '--verify', '--quiet', ref], cwd, env);
|
|
1170
|
+
if (rev.status !== 0 || rev.stdout.trim() === '') {
|
|
1171
|
+
// The ref vanished between the classification and now (another
|
|
1172
|
+
// reconciler won): the desired end state; nothing to report.
|
|
1173
|
+
continue;
|
|
1174
|
+
}
|
|
1175
|
+
const cleared = await leasedDeleteLockRef(ref, rev.stdout.trim(), cwd, arbiter, env);
|
|
1176
|
+
if (cleared === 'deleted') {
|
|
1177
|
+
report.released.push(lock.entry);
|
|
1178
|
+
continue;
|
|
1179
|
+
}
|
|
1180
|
+
// The lease was REJECTED. Distinguish the benign case (a concurrent
|
|
1181
|
+
// reconciler / `release-lock` already cleared the SAME lock): the desired
|
|
1182
|
+
// end state) from a genuine concurrent mutation (back off, never force).
|
|
1183
|
+
const remote = await gitSoft(['ls-remote', arbiter, ref], cwd, env);
|
|
1184
|
+
if (remote.status === 0 && remote.stdout.trim() === '') {
|
|
1185
|
+
await gitSoft(['update-ref', '-d', ref], cwd, env);
|
|
1186
|
+
continue;
|
|
1187
|
+
}
|
|
1188
|
+
keepUnreleased(lock);
|
|
1189
|
+
report.errors.push({
|
|
1190
|
+
entry: lock.entry,
|
|
1191
|
+
message: `terminal-lock release for '${lock.entry}' was rejected (the ref changed concurrently); left HELD, never forced.`,
|
|
1192
|
+
});
|
|
1193
|
+
}
|
|
1194
|
+
catch (err) {
|
|
1195
|
+
keepUnreleased(lock);
|
|
1196
|
+
report.errors.push({
|
|
1197
|
+
entry: lock.entry,
|
|
1198
|
+
message: err instanceof Error ? err.message : String(err),
|
|
1199
|
+
});
|
|
1200
|
+
}
|
|
1201
|
+
}
|
|
1202
|
+
return report;
|
|
1203
|
+
}
|
|
998
1204
|
/** True iff a {@link ReconcileOutcome} names an ORPHAN class the
|
|
999
1205
|
* `--reap-stale-locks` sweep can auto-clear via the shared leased delete.
|
|
1000
1206
|
* Post-`retire-stuck-lock-state` this is just `cleared-stale`. */
|
|
@@ -1342,8 +1548,32 @@ async function isItemSurfacedOnMain(type, slug, item, arbiter, cwd, env) {
|
|
|
1342
1548
|
/** True iff `<arbiter>/main` shows the item TERMINAL — any of
|
|
1343
1549
|
* {@link terminalMainPaths} present in `<arbiter>/main`'s tree. */
|
|
1344
1550
|
async function isTerminalOnMain(type, slug, arbiter, cwd, env) {
|
|
1551
|
+
return isTerminalAtRef(type, slug, `${arbiter}/main`, cwd, env);
|
|
1552
|
+
}
|
|
1553
|
+
/**
|
|
1554
|
+
* True iff `mainRef`'s tree contains any of {@link terminalMainPaths} for the
|
|
1555
|
+
* item, the ref-parameterised core of {@link isTerminalOnMain}.
|
|
1556
|
+
*
|
|
1557
|
+
* WHY `mainRef` IS A PARAMETER and not hard-coded to `<arbiter>/main`: the two
|
|
1558
|
+
* repo shapes dorfl works with hold the arbiter's `main` under DIFFERENT refs,
|
|
1559
|
+
* and reading the wrong one silently answers "not terminal" for every item
|
|
1560
|
+
* (observation `checkpoint-path-reports-its-own-write-as-absent`, the same class
|
|
1561
|
+
* `arbiter-refs.ts` was written for).
|
|
1562
|
+
* - A WORKING CLONE has a normal fetch refspec, so the arbiter's main lands in
|
|
1563
|
+
* the REMOTE-TRACKING ref `refs/remotes/<arbiter>/main` ⇒ `<arbiter>/main`.
|
|
1564
|
+
* - A BARE HUB MIRROR (`git clone --bare`, see `repo-mirror.ts`) has NO
|
|
1565
|
+
* `remote.origin.fetch` refspec and therefore NO `refs/remotes/*` namespace
|
|
1566
|
+
* AT ALL: its copy of the arbiter's main is `refs/heads/main` ⇒ plain
|
|
1567
|
+
* `main`. This is why every other mirror reader in this codebase
|
|
1568
|
+
* (`lintRefLedger('main', mirrorPath)`, `fetchMirrorMainOrWarn`) speaks
|
|
1569
|
+
* `main`, not `origin/main`.
|
|
1570
|
+
* Passing `<arbiter>/main` on a mirror makes `cat-file -e` fail with `invalid
|
|
1571
|
+
* object name`, which is indistinguishable from "the file is not there", so
|
|
1572
|
+
* every lock classifies as in-flight and the sweep becomes a silent no-op.
|
|
1573
|
+
*/
|
|
1574
|
+
async function isTerminalAtRef(type, slug, mainRef, cwd, env) {
|
|
1345
1575
|
for (const path of terminalMainPaths(type, slug)) {
|
|
1346
|
-
const exists = (await gitSoft(['cat-file', '-e', `${
|
|
1576
|
+
const exists = (await gitSoft(['cat-file', '-e', `${mainRef}:${path}`], cwd, env))
|
|
1347
1577
|
.status === 0;
|
|
1348
1578
|
if (exists) {
|
|
1349
1579
|
return true;
|
|
@@ -1351,6 +1581,30 @@ async function isTerminalOnMain(type, slug, arbiter, cwd, env) {
|
|
|
1351
1581
|
}
|
|
1352
1582
|
return false;
|
|
1353
1583
|
}
|
|
1584
|
+
/**
|
|
1585
|
+
* Refresh `mainRef` from the arbiter with an EXPLICIT refspec that writes
|
|
1586
|
+
* EXACTLY the ref the terminal probe will read, so the read can never land on a
|
|
1587
|
+
* ref the fetch did not populate (the bare-mirror trap documented on
|
|
1588
|
+
* {@link isTerminalAtRef}; the same stance as `arbiter-refs.ts`). A plain
|
|
1589
|
+
* `git fetch <arbiter>` is deliberately NOT used: in a bare mirror it writes
|
|
1590
|
+
* `refs/heads/*` and never populates `refs/remotes/*`, and in a working clone it
|
|
1591
|
+
* depends on whatever refspec happens to be configured.
|
|
1592
|
+
*
|
|
1593
|
+
* Returns the git result so the caller can treat a failure as "cannot prove
|
|
1594
|
+
* anything terminal" and keep every lock.
|
|
1595
|
+
*/
|
|
1596
|
+
export async function refreshMainRef(mainRef, arbiter, cwd, env) {
|
|
1597
|
+
// `<arbiter>/main` ⇒ remote-tracking destination; a bare `main` (or any other
|
|
1598
|
+
// local branch name) ⇒ `refs/heads/` destination, the mirror shape.
|
|
1599
|
+
const remotePrefix = `${arbiter}/`;
|
|
1600
|
+
const dest = mainRef.startsWith(remotePrefix)
|
|
1601
|
+
? `refs/remotes/${mainRef}`
|
|
1602
|
+
: `refs/heads/${mainRef}`;
|
|
1603
|
+
const branch = mainRef.startsWith(remotePrefix)
|
|
1604
|
+
? mainRef.slice(remotePrefix.length)
|
|
1605
|
+
: mainRef;
|
|
1606
|
+
return gitSoft(['fetch', '--quiet', arbiter, `+refs/heads/${branch}:${dest}`], cwd, env);
|
|
1607
|
+
}
|
|
1354
1608
|
/** List the entries (`<type>-<slug>`) currently locked on the arbiter (the
|
|
1355
1609
|
* stuck-lock report / `status` read path). */
|
|
1356
1610
|
export async function listItemLocks(cwd, arbiter = 'origin', env) {
|