@cyanheads/congressgov-mcp-server 0.5.0 → 0.5.2
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/AGENTS.md +19 -14
- package/CLAUDE.md +19 -14
- package/Dockerfile +7 -2
- package/README.md +2 -1
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/resources/definitions/bill-types.resource.d.ts.map +1 -1
- package/dist/mcp-server/resources/definitions/bill-types.resource.js +2 -0
- package/dist/mcp-server/resources/definitions/bill-types.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/current-congress.resource.d.ts.map +1 -1
- package/dist/mcp-server/resources/definitions/current-congress.resource.js +2 -0
- package/dist/mcp-server/resources/definitions/current-congress.resource.js.map +1 -1
- package/dist/mcp-server/tools/definitions/bill-lookup.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/committee-reports.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/daily-record.tool.d.ts +1 -1
- package/dist/mcp-server/tools/tool-helpers.d.ts +1 -1
- package/dist/mcp-server/tools/tool-helpers.d.ts.map +1 -1
- package/dist/mcp-server/tools/tool-helpers.js +1 -1
- package/dist/mcp-server/tools/tool-helpers.js.map +1 -1
- package/dist/services/congress-api/congress-api-service.d.ts +5 -0
- package/dist/services/congress-api/congress-api-service.d.ts.map +1 -1
- package/dist/services/congress-api/congress-api-service.js +10 -5
- package/dist/services/congress-api/congress-api-service.js.map +1 -1
- package/dist/services/congress-documents/congress-documents-service.d.ts +33 -14
- package/dist/services/congress-documents/congress-documents-service.d.ts.map +1 -1
- package/dist/services/congress-documents/congress-documents-service.js +59 -39
- package/dist/services/congress-documents/congress-documents-service.js.map +1 -1
- package/dist/services/congress-documents/extract-text-stream.d.ts +58 -0
- package/dist/services/congress-documents/extract-text-stream.d.ts.map +1 -0
- package/dist/services/congress-documents/extract-text-stream.js +689 -0
- package/dist/services/congress-documents/extract-text-stream.js.map +1 -0
- package/dist/services/congress-documents/extract-text.d.ts +6 -0
- package/dist/services/congress-documents/extract-text.d.ts.map +1 -1
- package/dist/services/congress-documents/extract-text.js +16 -10
- package/dist/services/congress-documents/extract-text.js.map +1 -1
- package/dist/services/senate-lis/senate-vote-service.d.ts +5 -0
- package/dist/services/senate-lis/senate-vote-service.d.ts.map +1 -1
- package/dist/services/senate-lis/senate-vote-service.js +10 -5
- package/dist/services/senate-lis/senate-vote-service.js.map +1 -1
- package/package.json +7 -7
- package/server.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"congress-api-service.js","sourceRoot":"","sources":["../../../src/services/congress-api/congress-api-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"congress-api-service.js","sourceRoot":"","sources":["../../../src/services/congress-api/congress-api-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAqC5D,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,+DAA+D;AAC/D,SAAS,OAAO,CAAC,CAAS;IACxB,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;IACxB,IAAI,OAAO,IAAI,EAAE,IAAI,OAAO,IAAI,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;QACf,KAAK,CAAC;YACJ,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,KAAK,CAAC;YACJ,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,KAAK,CAAC;YACJ,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB;YACE,OAAO,GAAG,CAAC,IAAI,CAAC;IACpB,CAAC;AACH,CAAC;AAED,0DAA0D;AAC1D,SAAS,mBAAmB,CAAC,IAAe;IAC1C,IAAI,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IACrC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,IAAe;IACzC,IAAI,UAAU,GAAc,IAAI,CAAC;IAEjC,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzE,UAAU,GAAG,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,WAAW,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC;IACnE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAChD,IAAI,KAAK,GAAY,KAAK,CAAC;YAC3B,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC9D,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBACtC,KAAK,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;YAClC,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,UAAU,GAAG,EAAE,GAAG,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5D,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,0DAA0D;AAC1D,SAAS,wBAAwB,CAAC,IAAe;IAC/C,IAAI,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAC7C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,aAAa,GAAG,kDAAkD,CAAC;AAEzE;;;;GAIG;AACH,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;AACxC,CAAC;AAED,SAAS,mCAAmC,CAAC,IAAe;IAC1D,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACrF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,QAAqB;IACnD,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,mBAAmB,CAAC,SAAoB;IAC/C,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,IAAI,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACjD,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,mBAAmB,EAAE,CAAC;YACpD,IAAI,WAAW,CAAC,OAAO,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,oBAAoB,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,IACE,OAAO,WAAW,KAAK,UAAU;QACjC,OAAO,WAAW,CAAC,SAAS,CAAC,cAAc,KAAK,UAAU;QAC1D,CAAC,KAAK,EACN,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,WAAW,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,eAAe,GAAG,IAAI,CAAC;AAC7B,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5C,MAAM,cAAc,GAAG,IAAI,CAAC;AAC5B,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,gBAAgB,GAAG,mCAAmC,CAAC;AAE7D,MAAM,kBAAkB,GACtB,4GAA4G,CAAC;AAE/G;;;;GAIG;AACH,MAAM,kBAAkB,GAAG;IACzB,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,EAAE,IAAI,EAAE,yEAAyE,EAAE;CACrF,CAAC;AACX,MAAM,qBAAqB,GAAG;IAC5B,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,0DAA0D,EAAE;CACtE,CAAC;AACX,MAAM,wBAAwB,GAAG;IAC/B,MAAM,EAAE,iBAAiB;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE,4HAA4H;KACnI;CACO,CAAC;AACX,MAAM,uBAAuB,GAAG;IAC9B,MAAM,EAAE,gBAAgB;IACxB,QAAQ,EAAE;QACR,IAAI,EAAE,kFAAkF;KACzF;CACO,CAAC;AAEX;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,KAAe;IACzC,OAAO,OAAO,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAChF,CAAC;AAED,yEAAyE;AACzE,SAAS,gBAAgB,CAAC,KAAe;IACvC,OAAO,OAAO,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAAC,KAAe,EAAE,IAAY;IAC1D,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC/C,IAAI,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,gBAAgB,CAAC,WAAW;YAC/B,OAAO,WAAW,CAAC,kBAAkB,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,qBAAqB,EAAE,EAAE,IAAI,CAAC,CAAC;QACtF,KAAK,gBAAgB,CAAC,QAAQ;YAC5B,OAAO,QAAQ,CACb,oDAAoD,EACpD,EAAE,GAAG,IAAI,EAAE,GAAG,kBAAkB,EAAE,EAClC,IAAI,CACL,CAAC;QACJ,KAAK,gBAAgB,CAAC,aAAa,CAAC;QACpC,KAAK,gBAAgB,CAAC,SAAS,CAAC;QAChC,KAAK,gBAAgB,CAAC,YAAY,CAAC;QACnC,KAAK,gBAAgB,CAAC,eAAe;YACnC,OAAO,aAAa,CAClB,iDAAiD,MAAM,GAAG,EAC1D,EAAE,GAAG,IAAI,EAAE,GAAG,wBAAwB,EAAE,EACxC,IAAI,CACL,CAAC;QACJ;YACE,yEAAyE;YACzE,wEAAwE;YACxE,2CAA2C;YAC3C,OAAO,IAAI,QAAQ,CACjB,KAAK,CAAC,IAAI,EACV,4CAA4C,MAAM,GAAG,EACrD,EAAE,GAAG,IAAI,EAAE,GAAG,uBAAuB,EAAE,EACvC,IAAI,CACL,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAS;IACf,OAAO,CAAS;IACzB,YAAY,GAAG,CAAC,CAAC;IACjB,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEjC;QACE,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;IAEhB,SAAS,CAAC,MAAuB,EAAE,GAAa;QAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ;YAC1B,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE;YAC/C,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAqB,EAAE,GAAa;QAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EACvF,QAAQ,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,UAAU,qBAAqB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EACnH,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAiB,EAAE,CAAC;IAC1C,CAAC;IAED,kBAAkB,CAAC,MAA6B,EAAE,GAAa;QAC7D,MAAM,IAAI,GAAG,SAAS,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACtG,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAC5C,QAAQ,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,UAAU,YAAY,MAAM,CAAC,WAAW,sBAAsB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAClJ,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;IACJ,CAAC;IAED,eAAe;IAEf,QAAQ,CAAC,MAAsB,EAAE,GAAa;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO;YACzB,CAAC,CAAC,QAAQ,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE;YAC7C,CAAC,CAAC,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAoB,EAAE,GAAa;QAC9C,oGAAoG;QACpG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,EACpF,GAAG,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,QAAQ,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,aAAa,EAC1G,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,IAAiB,EAAE,CAAC;IACzC,CAAC;IAED,kBAAkB;IAElB,WAAW,CAAC,MAAyB,EAAE,GAAa;QAClD,MAAM,MAAM,GACV,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACpF,IAAI,IAAI,GAAG,MAAM,CAAC;QAClB,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACnE,CAAC;QACD,MAAM,UAAU,GACd,MAAM,CAAC,aAAa,KAAK,SAAS;YAChC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,GAAa;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,UAAU,EAAE,EAAE,GAAG,CAAC,EAC5C,UAAU,UAAU,iFAAiF,EACrG,EAAE,UAAU,EAAE,CACf,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAmB,EAAE,CAAC;IAC9C,CAAC;IAED,oBAAoB,CAClB,MAAkC,EAClC,GAAa;QAEb,MAAM,IAAI,GAAG,WAAW,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAC5C,UAAU,MAAM,CAAC,UAAU,aAAa,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,aAAa,EAClF,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;IACJ,CAAC;IAED,qBAAqB;IAErB,cAAc,CAAC,MAA4B,EAAE,GAAa;QACxD,IAAI,IAAI,GAAG,YAAY,CAAC;QACxB,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO;YAAE,IAAI,GAAG,cAAc,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;aAC3F,IAAI,MAAM,CAAC,QAAQ;YAAE,IAAI,GAAG,cAAc,MAAM,CAAC,QAAQ,EAAE,CAAC;aAC5D,IAAI,MAAM,CAAC,OAAO;YAAE,IAAI,GAAG,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,aAAqB,EACrB,GAAa;QAEb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,OAAO,IAAI,aAAa,EAAE,EAAE,GAAG,CAAC,EAC7D,aAAa,aAAa,qBAAqB,OAAO,sNAAsN,EAC5Q,EAAE,OAAO,EAAE,aAAa,EAAE,CAC3B,CAAC;QACF,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAsB,EAAE,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,MAAkC,EAClC,GAAa;QAEb,MAAM,IAAI,GAAG,cAAc,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1F,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CACnC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAC5C,aAAa,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,WAAW,wNAAwN,EAC1S,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,mCAAmC,CAAC,EAAE,CAAC;QACnF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gBAAgB;IAEhB,SAAS,CAAC,MAAuB,EAAE,GAAa;QAC9C,OAAO,IAAI,CAAC,SAAS,CACnB,eAAe,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,EAClD,oBAAoB,EACpB,MAAM,EACN,GAAG,CACJ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAqB,EAAE,GAAa;QAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAC5F,wBAAwB,MAAM,CAAC,UAAU,qBAAqB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,MAAM,CAAC,OAAO,GAAG,EAC7H,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAc,EAAE,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,MAAwC,EACxC,GAAa;QAEb,2JAA2J;QAC3J,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CACH,IAAI,CAAC,GAAG,CACN,eAAe,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,UAAU,EAC/E,GAAG,CACJ,EACH,wBAAwB,MAAM,CAAC,UAAU,qBAAqB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,MAAM,CAAC,OAAO,GAAG,EAC7H,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF;;;uDAG+C;QAC/C,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,4BAA4B,IAAI,IAAI,CAAc,CAAC;QACzE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QACrC,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACpF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5F,OAAO;YACL,IAAI,EAAE,KAAK;YACX,IAAI;YACJ,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE;SACrD,CAAC;IACJ,CAAC;IAED,sBAAsB;IAEtB,eAAe,CAAC,MAA6B,EAAE,GAAa;QAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,QAAgB,EAChB,gBAAwB,EACxB,GAAa;QAEb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,QAAQ,IAAI,gBAAgB,EAAE,EAAE,GAAG,CAAC,EAClE,gBAAgB,gBAAgB,qBAAqB,OAAO,CAAC,QAAQ,CAAC,YAAY,EAClF,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAC/B,CAAC;QACF,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAuB,EAAE,CAAC;IACtD,CAAC;IAED,UAAU,CACR,QAAgB,EAChB,gBAAwB,EACxB,UAAkB,EAClB,MAAyB,EACzB,GAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EAAE,CACH,IAAI,CAAC,SAAS,CACZ,eAAe,QAAQ,IAAI,gBAAgB,IAAI,UAAU,EAAE,EAC3D,UAAU,EACV,MAAM,EACN,GAAG,CACJ,EACH,iBAAiB,UAAU,mBAAmB,gBAAgB,KAAK,OAAO,CAAC,QAAQ,CAAC,qFAAqF,EACzK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,CACpD,CAAC;IACJ,CAAC;IAED,wBAAwB,CACtB,MAAmC,EACnC,GAAa;QAEb,MAAM,IAAI,GAAG,eAAe,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAC5C,gBAAgB,MAAM,CAAC,gBAAgB,YAAY,MAAM,CAAC,WAAW,sBAAsB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAC/H,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;IACJ,CAAC;IAED,oBAAoB;IAEpB,aAAa,CAAC,MAA2B,EAAE,GAAa;QACtD,IAAI,IAAI,GAAG,YAAY,CAAC;QACxB,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;YACpC,IAAI,GAAG,cAAc,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;aACvD,IAAI,MAAM,CAAC,QAAQ;YAAE,IAAI,GAAG,cAAc,MAAM,CAAC,QAAQ,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IAED,sBAAsB;IAEtB,KAAK,CAAC,cAAc,CAAC,MAAyB,EAAE,GAAa;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7E,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA0B,EAAE,GAAa;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,YAAY,EAAE,EAAE,GAAG,CAAC,EACxD,cAAc,MAAM,CAAC,YAAY,kFAAkF,EACnH,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CACtC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAc,CAAC;QACrD,OAAO,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAc,EAAE,CAAC;IAC7D,CAAC;IAED,4BAA4B;IAE5B,KAAK,CAAC,oBAAoB,CACxB,MAAkC,EAClC,GAAa;QAEb,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU;YAC5B,CAAC,CAAC,qBAAqB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE;YAC7D,CAAC,CAAC,qBAAqB,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAClE,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,MAAgC,EAChC,GAAa;QAEb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CACH,IAAI,CAAC,GAAG,CACN,qBAAqB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,EAAE,EAClF,GAAG,CACJ,EACH,oBAAoB,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,YAAY,aAAa,EAC1G,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACtC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YAChF,MAAM,QAAQ,CACZ,oBAAoB,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,YAAY,aAAa,EAC1G,EAAE,GAAG,MAAM,EAAE,GAAG,kBAAkB,EAAE,CACrC,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAmB,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,MAAgC,EAChC,GAAa;QAEb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CACjC,GAAG,EAAE,CACH,IAAI,CAAC,GAAG,CACN,qBAAqB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,OAAO,EACvF,GAAG,CACJ,EACH,oBAAoB,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,YAAY,kBAAkB,EAC/G,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC;IAC9D,CAAC;IAED,qCAAqC;IAErC,eAAe,CAAC,MAA8B,EAAE,GAAa;QAC3D,OAAO,IAAI,CAAC,SAAS,CAAC,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAChG,CAAC;IAED,cAAc,CAAC,MAA4B,EAAE,GAAa;QACxD,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EAAE,CACH,IAAI,CAAC,SAAS,CACZ,+BAA+B,MAAM,CAAC,YAAY,EAAE,EACpD,0BAA0B,EAC1B,MAAM,EACN,GAAG,CACJ,EACH,UAAU,MAAM,CAAC,YAAY,+CAA+C,EAC5E,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAA8B,EAAE,GAAa;QAClE,MAAM,IAAI,GAAG,+BAA+B,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,WAAW,CAAC;QACjG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CACnC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,EACnD,SAAS,MAAM,CAAC,WAAW,cAAc,MAAM,CAAC,YAAY,+CAA+C,EAC3G,EAAE,GAAG,MAAM,EAAE,CACd,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IACtF,CAAC;IAED,4BAA4B;IAE5B,KAAK,CAAC,kBAAkB,CAAC,GAAa;QACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,GAAa;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mBAAmB;IAEnB;;;;;OAKG;IACK,KAAK,CAAC,WAAW,CACvB,EAAoB,EACpB,OAAe,EACf,IAA6B;QAE7B,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACzC,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC3C,IACE,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,QAAQ;oBACxC,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,EACvD,CAAC;oBACD,MAAM,QAAQ,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,SAAS,CACrB,IAAY,EACZ,OAAe,EACf,MAAoD,EACpD,GAAa,EACb,UAAmC;QAEnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACtD;uFAC+E;QAC/E,MAAM,KAAK,GACT,MAAM,EAAE,KAAK,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK;YACrD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;YACjC,CAAC,CAAC,QAAQ,CAAC;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACrC,CAAC;IAEO,iBAAiB,CACvB,GAAwC,EACxC,SAAiB,EACjB,MAAyB;QAEzB,MAAM,KAAK,GAAI,GAAG,EAAE,KAAgB,IAAI,SAAS,CAAC;QAClD,MAAM,aAAa,GAAG,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC/B,CAAC;IAED,6EAA6E;IACrE,GAAG,CAAC,IAAY,EAAE,GAAa,EAAE,KAA8B;QACrE,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,0BAA0B,IAAI,EAAE,CAAC;QACnD,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG;YACnB,SAAS;YACT,OAAO,EAAE,cAAc;YACvB,WAAW,EAAE,eAAe;YAC5B,UAAU,EAAE,YAAY,GAAG,CAAC;YAC5B,WAAW,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAC7D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC;QAEF,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YACjE,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC,EAAE,YAAY,CAAC,CAAC;IACnB,CAAC;IAEO,cAAc;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,oBAAoB,EAAE,CAAC;YAClD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,cAAc,EAAE,CAAC;YACxC,MAAM,WAAW,CAAC,kBAAkB,EAAE,EAAE,GAAG,qBAAqB,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,WAAmB;QACtC,MAAM,OAAO,GAA2B;YACtC,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,YAAY;YACxB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,iBAAiB;YACxB,UAAU,EAAE,YAAY;YACxB,UAAU,EAAE,YAAY;YACxB,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,aAAa;YAC1B,YAAY,EAAE,cAAc;YAC5B,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,QAAQ;SACjB,CAAC;QACF,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC;IAC7C,CAAC;IAEO,QAAQ,CAAC,IAAY,EAAE,KAA8B;QAC3D,uIAAuI;QACvI,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC;QAC9C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;oBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,UAAU,CAChB,MAAoD,EACpD,UAAmC;QAEnC,MAAM,KAAK,GAA2B,EAAE,GAAG,UAAU,EAAE,CAAC;QACxD,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,MAAM,EAAE,YAAY;YAAE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACnE,IAAI,MAAM,EAAE,UAAU;YAAE,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACK,gBAAgB,CAAC,GAAY;QACnC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,IAAI,qBAAqB,IAAI,GAAG,IAAI,YAAY,IAAI,GAAG;YAAE,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzF,MAAM,MAAM,GAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAA2B,IAAI,EAAE,CAAC;QACvF,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,GAAwB,EAAE,SAAiB;QACnE,OAAO,qBAAqB,CAAC,oBAAoB,CAAC;YAChD,SAAS;YACT,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,GAAa;QAClC,MAAM,MAAM,GAAG,GAAG,EAAE,MAAM,CAAC;QAC3B,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,GAAQ,EACR,IAAY,EACZ,cAA8B,EAC9B,MAAoB;QAEpB,IAAI,CAAC;YACH,OAAO,MAAM,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,EAAE,cAAc,EAAE;gBACrE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;gBACjE;;;+FAG+E;gBAC/E,gBAAgB,EAAE,CAAC,GAAG,CAAC;gBACvB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf;;;;gDAIoC;YACpC,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC9B,MAAM,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3C,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,KAAc;QACrC,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,kBAAkB;gBAClD,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,OAAO,CACxC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,iBAAiB,CAAC,IAAY,EAAE,IAAY;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,kBAAkB,CAAC,mDAAmD,EAAE;gBAC5E,IAAI;gBACJ,GAAG,uBAAuB;aAC3B,CAAC,CAAC;QACL,CAAC;QACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,MAAM,kBAAkB,CAAC,iDAAiD,EAAE;gBAC1E,IAAI;gBACJ,GAAG,uBAAuB;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,kBAAkB,CACtB,yCAAyC,EACzC,EAAE,IAAI,EAAE,GAAG,uBAAuB,EAAE,EACpC,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,wBAAwB,CAAC,IAAY;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAE7D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;YAC9D,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;gBAC9B,CAAC,CAAC,MAAM,CAAC,KAAK;gBACd,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;oBAClC,CAAC,CAAC,MAAM,CAAC,OAAO;oBAChB,CAAC,CAAC,EAAE,CAAC;YACX,OAAO,mCAAmC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAED,IAAI,QAAwC,CAAC;AAE7C,MAAM,UAAU,eAAe;IAC7B,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC,QAAQ;QACX,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
*
|
|
10
10
|
* Two bounds, deliberately separate:
|
|
11
11
|
* - **The fetch** is bounded by {@link MAX_DOCUMENT_BYTES}, a request timeout, and
|
|
12
|
-
* a content-type allowlist.
|
|
13
|
-
* is
|
|
14
|
-
*
|
|
12
|
+
* a content-type allowlist. The body is extracted as it streams and only the
|
|
13
|
+
* requested window is kept, so what a read *retains* is flat in the size of
|
|
14
|
+
* the document and the ceiling bounds how long a response may run rather than
|
|
15
|
+
* how much of one fits in a buffer.
|
|
15
16
|
* - **The response** is bounded by an exact character offset/limit window. Offsets
|
|
16
17
|
* index into the extracted plain text and are never snapped to section or
|
|
17
18
|
* paragraph breaks, so feeding `nextOffset` back walks a document with every
|
|
@@ -22,12 +23,14 @@
|
|
|
22
23
|
import type { Context } from '@cyanheads/mcp-ts-core';
|
|
23
24
|
import type { DocumentContent, FetchDocumentParams } from './types.js';
|
|
24
25
|
/**
|
|
25
|
-
* Ceiling on a single document. The largest
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
26
|
+
* Ceiling on a single document. The largest bodies Congress.gov publishes are
|
|
27
|
+
* the omnibus appropriations acts — 116th Congress H.R. 133 enrolled runs
|
|
28
|
+
* 6,790,482 bytes as Formatted Text and 9,812,888 as XML — and both formats of a
|
|
29
|
+
* document have to clear it, since a caller sent to the other one by a recovery
|
|
30
|
+
* hint would hit the same refusal. This clears the largest by better than a
|
|
31
|
+
* factor of two; the request deadline is what a runaway response meets first.
|
|
29
32
|
*/
|
|
30
|
-
export declare const MAX_DOCUMENT_BYTES =
|
|
33
|
+
export declare const MAX_DOCUMENT_BYTES = 25000000;
|
|
31
34
|
/** Bounds the whole exchange, headers and body — a megabyte-scale body needs the room. */
|
|
32
35
|
export declare const REQUEST_TIMEOUT_MS = 30000;
|
|
33
36
|
export declare class CongressDocumentsService {
|
|
@@ -42,8 +45,8 @@ export declare class CongressDocumentsService {
|
|
|
42
45
|
* general-purpose fetcher.
|
|
43
46
|
*/
|
|
44
47
|
fetchDocument(params: FetchDocumentParams, ctx: Context): Promise<DocumentContent>;
|
|
45
|
-
/**
|
|
46
|
-
private
|
|
48
|
+
/** Describe the extracted `[offset, offset + limit)` window and what remains. */
|
|
49
|
+
private describeWindow;
|
|
47
50
|
private assertAllowedHost;
|
|
48
51
|
private doFetch;
|
|
49
52
|
/**
|
|
@@ -56,13 +59,29 @@ export declare class CongressDocumentsService {
|
|
|
56
59
|
/** Refuse an oversized document on its advertised length, before reading a byte of it. */
|
|
57
60
|
private assertAdvertisedSize;
|
|
58
61
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
+
* Extract the requested character window as the body streams, under a hard
|
|
63
|
+
* byte budget that cancels the stream the moment it is exceeded.
|
|
64
|
+
*
|
|
65
|
+
* Nothing but the window is retained: the decoder carries a partial character
|
|
66
|
+
* across a chunk boundary and the extractor carries its parse state, so the
|
|
67
|
+
* live set stays near the window's own size however large the document is.
|
|
68
|
+
* Transient allocation still scales with the body — peak RSS is higher than a
|
|
69
|
+
* buffered read of the same document — but it is garbage, not live, so it is
|
|
70
|
+
* concurrent reads rather than one large read that the ceiling has to survive.
|
|
71
|
+
*/
|
|
72
|
+
private readWindow;
|
|
73
|
+
/**
|
|
74
|
+
* A body that dies partway through is the transport failing, not a malformed
|
|
75
|
+
* document — the same classification a connection that never opened gets.
|
|
62
76
|
*/
|
|
63
|
-
private
|
|
77
|
+
private readChunk;
|
|
64
78
|
private tooLarge;
|
|
65
79
|
private isRetryableError;
|
|
80
|
+
/**
|
|
81
|
+
* Derive the context the network helpers log and report against. `Context`
|
|
82
|
+
* extends `RequestContext`, so the handler's own context is the parent — the
|
|
83
|
+
* request ID carries through and only the operation label is per-call.
|
|
84
|
+
*/
|
|
66
85
|
private getRequestContext;
|
|
67
86
|
private getAbortSignal;
|
|
68
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"congress-documents-service.d.ts","sourceRoot":"","sources":["../../../src/services/congress-documents/congress-documents-service.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"congress-documents-service.d.ts","sourceRoot":"","sources":["../../../src/services/congress-documents/congress-documents-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAWtD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEvE;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,WAAa,CAAC;AAE7C,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAsCzC,qBAAa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAA7C,YAA6B,gBAAgB,GAAE,MAA2B,EAAI;IAE9E;;;;;;;OAOG;IACG,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAiBvF;IAED,iFAAiF;IACjF,OAAO,CAAC,cAAc;IAiCtB,OAAO,CAAC,iBAAiB;YAoBX,OAAO;IAsBrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,iBAAiB;IAgBzB,0FAA0F;IAC1F,OAAO,CAAC,oBAAoB;IAQ5B;;;;;;;;;;OAUG;YACW,UAAU;IAuCxB;;;OAGG;YACW,SAAS;IAevB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,gBAAgB;IAWxB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,cAAc;CAIvB;AAID,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED,wBAAgB,oBAAoB,IAAI,wBAAwB,CAO/D"}
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
*
|
|
10
10
|
* Two bounds, deliberately separate:
|
|
11
11
|
* - **The fetch** is bounded by {@link MAX_DOCUMENT_BYTES}, a request timeout, and
|
|
12
|
-
* a content-type allowlist.
|
|
13
|
-
* is
|
|
14
|
-
*
|
|
12
|
+
* a content-type allowlist. The body is extracted as it streams and only the
|
|
13
|
+
* requested window is kept, so what a read *retains* is flat in the size of
|
|
14
|
+
* the document and the ceiling bounds how long a response may run rather than
|
|
15
|
+
* how much of one fits in a buffer.
|
|
15
16
|
* - **The response** is bounded by an exact character offset/limit window. Offsets
|
|
16
17
|
* index into the extracted plain text and are never snapped to section or
|
|
17
18
|
* paragraph breaks, so feeding `nextOffset` back walks a document with every
|
|
@@ -20,15 +21,17 @@
|
|
|
20
21
|
* @module services/congress-documents/congress-documents-service
|
|
21
22
|
*/
|
|
22
23
|
import { invalidParams, JsonRpcErrorCode, McpError, notFound, serviceUnavailable, } from '@cyanheads/mcp-ts-core/errors';
|
|
23
|
-
import { fetchWithTimeout, withRetry } from '@cyanheads/mcp-ts-core/utils';
|
|
24
|
-
import {
|
|
24
|
+
import { fetchWithTimeout, requestContextService, withRetry } from '@cyanheads/mcp-ts-core/utils';
|
|
25
|
+
import { createStreamingExtractor } from './extract-text-stream.js';
|
|
25
26
|
/**
|
|
26
|
-
* Ceiling on a single document. The largest
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
27
|
+
* Ceiling on a single document. The largest bodies Congress.gov publishes are
|
|
28
|
+
* the omnibus appropriations acts — 116th Congress H.R. 133 enrolled runs
|
|
29
|
+
* 6,790,482 bytes as Formatted Text and 9,812,888 as XML — and both formats of a
|
|
30
|
+
* document have to clear it, since a caller sent to the other one by a recovery
|
|
31
|
+
* hint would hit the same refusal. This clears the largest by better than a
|
|
32
|
+
* factor of two; the request deadline is what a runaway response meets first.
|
|
30
33
|
*/
|
|
31
|
-
export const MAX_DOCUMENT_BYTES =
|
|
34
|
+
export const MAX_DOCUMENT_BYTES = 25_000_000;
|
|
32
35
|
/** Bounds the whole exchange, headers and body — a megabyte-scale body needs the room. */
|
|
33
36
|
export const REQUEST_TIMEOUT_MS = 30_000;
|
|
34
37
|
const MAX_ATTEMPTS = 3;
|
|
@@ -79,7 +82,7 @@ export class CongressDocumentsService {
|
|
|
79
82
|
const operation = 'CongressDocumentsService GET document';
|
|
80
83
|
const requestContext = this.getRequestContext(ctx, operation);
|
|
81
84
|
const signal = this.getAbortSignal(ctx);
|
|
82
|
-
const
|
|
85
|
+
const window = await withRetry(() => this.doFetch(params, requestContext, ctx, signal), {
|
|
83
86
|
operation,
|
|
84
87
|
context: requestContext,
|
|
85
88
|
baseDelayMs: BASE_BACKOFF_MS,
|
|
@@ -87,12 +90,11 @@ export class CongressDocumentsService {
|
|
|
87
90
|
isTransient: (error) => this.isRetryableError(error),
|
|
88
91
|
...(signal ? { signal } : {}),
|
|
89
92
|
});
|
|
90
|
-
|
|
91
|
-
return this.window(text, params, ctx);
|
|
93
|
+
return this.describeWindow(window, params, ctx);
|
|
92
94
|
}
|
|
93
|
-
/**
|
|
94
|
-
window
|
|
95
|
-
const totalCharacters =
|
|
95
|
+
/** Describe the extracted `[offset, offset + limit)` window and what remains. */
|
|
96
|
+
describeWindow(window, params, ctx) {
|
|
97
|
+
const { text, totalCharacters } = window;
|
|
96
98
|
const offset = params.characterOffset;
|
|
97
99
|
/** An empty document is a real (if unusual) answer at offset 0 — not a bad offset. */
|
|
98
100
|
if (totalCharacters > 0 && offset >= totalCharacters) {
|
|
@@ -104,11 +106,10 @@ export class CongressDocumentsService {
|
|
|
104
106
|
retryable: false,
|
|
105
107
|
});
|
|
106
108
|
}
|
|
107
|
-
const
|
|
108
|
-
const end = offset + slice.length;
|
|
109
|
+
const end = offset + text.length;
|
|
109
110
|
const truncated = end < totalCharacters;
|
|
110
111
|
return {
|
|
111
|
-
text
|
|
112
|
+
text,
|
|
112
113
|
totalCharacters,
|
|
113
114
|
offset,
|
|
114
115
|
truncated,
|
|
@@ -133,10 +134,10 @@ export class CongressDocumentsService {
|
|
|
133
134
|
});
|
|
134
135
|
}
|
|
135
136
|
}
|
|
136
|
-
async doFetch(
|
|
137
|
+
async doFetch(params, requestContext, ctx, signal) {
|
|
137
138
|
let response;
|
|
138
139
|
try {
|
|
139
|
-
response = await fetchWithTimeout(url, REQUEST_TIMEOUT_MS, requestContext, {
|
|
140
|
+
response = await fetchWithTimeout(params.url, REQUEST_TIMEOUT_MS, requestContext, {
|
|
140
141
|
headers: { Accept: 'text/html, application/xml, text/plain, */*' },
|
|
141
142
|
expectedStatuses: [404],
|
|
142
143
|
...(signal ? { signal } : {}),
|
|
@@ -147,7 +148,7 @@ export class CongressDocumentsService {
|
|
|
147
148
|
}
|
|
148
149
|
this.assertContentType(response, ctx);
|
|
149
150
|
this.assertAdvertisedSize(response, ctx);
|
|
150
|
-
return this.
|
|
151
|
+
return this.readWindow(response, params, ctx);
|
|
151
152
|
}
|
|
152
153
|
/**
|
|
153
154
|
* A 404 means Congress.gov's metadata named a document its own file host does
|
|
@@ -191,17 +192,27 @@ export class CongressDocumentsService {
|
|
|
191
192
|
throw this.tooLarge(ctx, { contentLength });
|
|
192
193
|
}
|
|
193
194
|
/**
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
195
|
+
* Extract the requested character window as the body streams, under a hard
|
|
196
|
+
* byte budget that cancels the stream the moment it is exceeded.
|
|
197
|
+
*
|
|
198
|
+
* Nothing but the window is retained: the decoder carries a partial character
|
|
199
|
+
* across a chunk boundary and the extractor carries its parse state, so the
|
|
200
|
+
* live set stays near the window's own size however large the document is.
|
|
201
|
+
* Transient allocation still scales with the body — peak RSS is higher than a
|
|
202
|
+
* buffered read of the same document — but it is garbage, not live, so it is
|
|
203
|
+
* concurrent reads rather than one large read that the ceiling has to survive.
|
|
197
204
|
*/
|
|
198
|
-
async
|
|
205
|
+
async readWindow(response, params, ctx) {
|
|
199
206
|
const reader = response.body?.getReader();
|
|
200
|
-
const
|
|
207
|
+
const decoder = new TextDecoder('utf-8');
|
|
208
|
+
const extractor = createStreamingExtractor({
|
|
209
|
+
characterLimit: params.characterLimit,
|
|
210
|
+
characterOffset: params.characterOffset,
|
|
211
|
+
});
|
|
201
212
|
let bytes = 0;
|
|
202
213
|
if (reader) {
|
|
203
214
|
for (;;) {
|
|
204
|
-
const { done, value } = await
|
|
215
|
+
const { done, value } = await this.readChunk(reader, ctx);
|
|
205
216
|
if (done)
|
|
206
217
|
break;
|
|
207
218
|
if (!value)
|
|
@@ -211,7 +222,7 @@ export class CongressDocumentsService {
|
|
|
211
222
|
await reader.cancel().catch(() => undefined);
|
|
212
223
|
throw this.tooLarge(ctx, { bytesRead: bytes });
|
|
213
224
|
}
|
|
214
|
-
|
|
225
|
+
extractor.push(decoder.decode(value, { stream: true }));
|
|
215
226
|
}
|
|
216
227
|
}
|
|
217
228
|
if (bytes === 0) {
|
|
@@ -221,13 +232,20 @@ export class CongressDocumentsService {
|
|
|
221
232
|
retryable: false,
|
|
222
233
|
});
|
|
223
234
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
235
|
+
extractor.push(decoder.decode());
|
|
236
|
+
return extractor.finish();
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* A body that dies partway through is the transport failing, not a malformed
|
|
240
|
+
* document — the same classification a connection that never opened gets.
|
|
241
|
+
*/
|
|
242
|
+
async readChunk(reader, ctx) {
|
|
243
|
+
try {
|
|
244
|
+
return await reader.read();
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
throw serviceUnavailable('The document body from Congress.gov ended before it was complete.', { reason: DOCUMENT_FETCH_FAILED, ...ctx.recoveryFor(DOCUMENT_FETCH_FAILED) }, { cause: error });
|
|
229
248
|
}
|
|
230
|
-
return new TextDecoder('utf-8').decode(merged);
|
|
231
249
|
}
|
|
232
250
|
tooLarge(ctx, data) {
|
|
233
251
|
return invalidParams(`This document exceeds the ${this.maxDocumentBytes.toLocaleString('en-US')}-byte ceiling this server retrieves.`, {
|
|
@@ -247,11 +265,13 @@ export class CongressDocumentsService {
|
|
|
247
265
|
}
|
|
248
266
|
return true;
|
|
249
267
|
}
|
|
268
|
+
/**
|
|
269
|
+
* Derive the context the network helpers log and report against. `Context`
|
|
270
|
+
* extends `RequestContext`, so the handler's own context is the parent — the
|
|
271
|
+
* request ID carries through and only the operation label is per-call.
|
|
272
|
+
*/
|
|
250
273
|
getRequestContext(ctx, operation) {
|
|
251
|
-
|
|
252
|
-
const requestId = typeof ctxRecord.requestId === 'string' ? ctxRecord.requestId : 'congress-documents-service';
|
|
253
|
-
const timestamp = typeof ctxRecord.timestamp === 'string' ? ctxRecord.timestamp : new Date().toISOString();
|
|
254
|
-
return { operation, requestId, timestamp };
|
|
274
|
+
return requestContextService.createRequestContext({ operation, parentContext: ctx });
|
|
255
275
|
}
|
|
256
276
|
getAbortSignal(ctx) {
|
|
257
277
|
const signal = ctx.signal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"congress-documents-service.js","sourceRoot":"","sources":["../../../src/services/congress-documents/congress-documents-service.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"congress-documents-service.js","sourceRoot":"","sources":["../../../src/services/congress-documents/congress-documents-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Incremental form of {@link extractDocumentText} — consumes a
|
|
3
|
+
* document body chunk by chunk and retains only the requested character window.
|
|
4
|
+
*
|
|
5
|
+
* `extract-text.ts` is the normative definition of the extraction: every
|
|
6
|
+
* character offset in the `content` contract indexes into the string it
|
|
7
|
+
* produces. This module reproduces that string exactly while holding constant
|
|
8
|
+
* memory, so a document is bounded by how long it takes to stream rather than by
|
|
9
|
+
* how much of it fits in a buffer. The two are pinned against each other by a
|
|
10
|
+
* differential test — if this file drifts, that test fails, not production.
|
|
11
|
+
*
|
|
12
|
+
* The whole-string pipeline is `normalize newlines → strip comments → unwrap
|
|
13
|
+
* <pre> → strip tags → decode entities → trim`, and three of those stages are
|
|
14
|
+
* decided by content that arrives arbitrarily late:
|
|
15
|
+
*
|
|
16
|
+
* - **Is there a `<pre>` at all?** Only a body with none is read whole. Both
|
|
17
|
+
* readings run at once, in two sinks; the losing one is dropped the moment a
|
|
18
|
+
* `<pre>` open tag settles the question.
|
|
19
|
+
* - **Where is the last `</pre>`?** Every close is a candidate, so each one
|
|
20
|
+
* records a mark on the `<pre>` sink and the last mark standing is restored at
|
|
21
|
+
* end of stream.
|
|
22
|
+
* - **Does this `<!--` (or this `<`) ever close?** An unterminated one is not a
|
|
23
|
+
* comment or a tag at all — the regexes leave it in the text. Its content is
|
|
24
|
+
* therefore written through as literal text and rolled back if the closing
|
|
25
|
+
* delimiter turns up.
|
|
26
|
+
*
|
|
27
|
+
* Every one of those rewinds is a mark: a handful of counters plus a length to
|
|
28
|
+
* truncate the captured window to. Nothing rewindable grows with the document.
|
|
29
|
+
*
|
|
30
|
+
* @module services/congress-documents/extract-text-stream
|
|
31
|
+
*/
|
|
32
|
+
/** The character window to retain while streaming. */
|
|
33
|
+
export interface TextWindowRequest {
|
|
34
|
+
/** Maximum characters to keep, counted from `characterOffset`. */
|
|
35
|
+
characterLimit: number;
|
|
36
|
+
/** First character of the extracted text to keep, 0-based. */
|
|
37
|
+
characterOffset: number;
|
|
38
|
+
}
|
|
39
|
+
/** The retained window plus the length of the whole extracted text. */
|
|
40
|
+
export interface ExtractedWindow {
|
|
41
|
+
/** The requested window of the extracted text. */
|
|
42
|
+
text: string;
|
|
43
|
+
/** Characters in the whole extracted document, not this window. */
|
|
44
|
+
totalCharacters: number;
|
|
45
|
+
}
|
|
46
|
+
/** Consumes a document body in chunks and yields one character window. */
|
|
47
|
+
export interface StreamingExtractor {
|
|
48
|
+
/** Finish the document and return its window. Call once, after the last push. */
|
|
49
|
+
finish(): ExtractedWindow;
|
|
50
|
+
/** Feed the next decoded chunk of the body. */
|
|
51
|
+
push(chunk: string): void;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Create an extractor that reproduces {@link extractDocumentText} over a chunked
|
|
55
|
+
* body while retaining only `characterLimit` characters of it.
|
|
56
|
+
*/
|
|
57
|
+
export declare function createStreamingExtractor(request: TextWindowRequest): StreamingExtractor;
|
|
58
|
+
//# sourceMappingURL=extract-text-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-text-stream.d.ts","sourceRoot":"","sources":["../../../src/services/congress-documents/extract-text-stream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,0EAA0E;AAC1E,MAAM,WAAW,kBAAkB;IACjC,iFAAiF;IACjF,MAAM,IAAI,eAAe,CAAC;IAC1B,+CAA+C;IAC/C,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAuqBD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,GAAG,kBAAkB,CAEvF"}
|