Tags: conductor-oss/javascript-sdk
Tags
Standardized metrics export - feature flagged (#125) * implement canonical metrics, feature flagged to preserve legacy where legacy ones were released * standardize on what truthiness means for env var * add some tests for new stuff * delint * add retry for 502,503,504 error codes * experiments with flaky test runs ... * remove editorialization * cleaner reporting on which metrics implementation is used in the test harness worker * updates for metrics related documentation * add or update a changelog * adjustments to internal mechanics * harness improvements for generating traffic with uris in metrics * harness improvements for generating traffic with uris in metrics .. cont'd (missing file oops) * revisions to internal mechanics for http request metrics * update to changelog and metrics docs * address self-review concerns regarding backward compatibility * address backward compat concerned from self review * trying to settle on a better implementation of retry fetch wrapper with regards to how metrics are tracked * fix for label defect in canonical metrics * give 1 flaky integration test more time and log it's progress * test out pre-existing prom-client renderer * use a safeEmit for metrics observation in workflowexecutor and fetchwithretry * make record api request time a noop in legacy mode to properly match existing legacy metrics output * fix a lint * this is not related to the metrics change, just trying to get some excessively flaky tests to maybe not need to be run five+ times to pass
Refactor project structure according to actual logical layers (#93) This is not just a refactoring, but actually an enhancement in different areas of the project. With this changes we are seeing following improvements: - The LLM has become capable of properly understanding the project, reading, and writing code. Previously, it often introduced errors by modifying OpenAPI‑generated code, which required additional iterations. - The updated structure is simple and intuitive, especially for people more familiar to JavaScript projects. - A similar approach is used in other popular libraries that rely on OpenAPI generators, where generated code is isolated from SDK abstractions. For example, AWS JS SDK v3 (https://github.com/aws/aws-sdk-js-v3) and the Kubernetes JavaScript Client (https://github.com/kubernetes-client/javascript). The codebase itself remains unchanged for end users. The PR only includes file and folder renames, updated import/export statements, and moving types and helpers into separate files. It does not affect functionality, build process, or user‑facing behavior. List of changes: - All generated code now resides in src/open-api/generated, with manual rewrites, additions and export encapsulation control layered on top within src/open-api - a cohesive OpenAPI layer used as a single unit by the rest of the project. - SDK abstractions formerly under orkes, core, task, and common have been moved into sdk/clients, sdk/createConductorClient, sdk/generators, and sdk/builders. - The monolithic code was reorganized into helper modules and shared types located at appropriate levels based on reuse. - Updated related import/export statements (no changes affecting user‑facing behavior). - Test folder v5-only was removed and all tests were moved into their domain‑specific files without additional structural test separation. Related tests are now selected via environment variable, updated package.json test scripts according to this change.
Refactor project structure according to actual logical layers (#93) This is not just a refactoring, but actually an enhancement in different areas of the project. With this changes we are seeing following improvements: - The LLM has become capable of properly understanding the project, reading, and writing code. Previously, it often introduced errors by modifying OpenAPI‑generated code, which required additional iterations. - The updated structure is simple and intuitive, especially for people more familiar to JavaScript projects. - A similar approach is used in other popular libraries that rely on OpenAPI generators, where generated code is isolated from SDK abstractions. For example, AWS JS SDK v3 (https://github.com/aws/aws-sdk-js-v3) and the Kubernetes JavaScript Client (https://github.com/kubernetes-client/javascript). The codebase itself remains unchanged for end users. The PR only includes file and folder renames, updated import/export statements, and moving types and helpers into separate files. It does not affect functionality, build process, or user‑facing behavior. List of changes: - All generated code now resides in src/open-api/generated, with manual rewrites, additions and export encapsulation control layered on top within src/open-api - a cohesive OpenAPI layer used as a single unit by the rest of the project. - SDK abstractions formerly under orkes, core, task, and common have been moved into sdk/clients, sdk/createConductorClient, sdk/generators, and sdk/builders. - The monolithic code was reorganized into helper modules and shared types located at appropriate levels based on reuse. - Updated related import/export statements (no changes affecting user‑facing behavior). - Test folder v5-only was removed and all tests were moved into their domain‑specific files without additional structural test separation. Related tests are now selected via environment variable, updated package.json test scripts according to this change.
PreviousNext