CacheControl / CacheControl/json-rules-engine
Right side of Rule condition Fact comparison does not appear in Condition result
- 主要语言
- JavaScript
- 星标
- 3.1k
- 派生
- 507
- PR 合并指标
- 30 天内没有已合并 PR
描述
If I have a Rule condition such as:
```js
{
fact: 'related-study-design',
params,
path: '$.id',
operator: 'equal',
value: {
fact: "active-study-design",
params,
path: '$.id'
}
}
```
Where I'm comparing the values of two Facts, the `factResult` value does not appear to show the actual values of both Facts in the Condition results:
```js
{
fact: "related-study-design",
params: {
id: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
},
path: "$.id",
operator: "equal",
value: {
fact: "active-study-design",
params: {
id: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
},
path: "$.id",
},
factResult: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
result: false,
}
```
As you can see, the value of `"active-study-design"` Fact is not available in the results. Is there any way to get both sides of this comparison in the condition results? I would have expected another `factResult` under `value` like this:
```js
{
fact: "related-study-design",
params: {
id: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
},
path: "$.id",
operator: "equal",
value: {
fact: "active-study-design",
params: {
id: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
},
path: "$.id",
factResult: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/n4Q2kVkVbGVzTig9ZTF0f",
},
factResult: "study-designs-EFKeEO9bFQrWCr7Nhr5u3/RmPP1lqIkrkPMa5D_KRw6",
result: false,
}
```
贡献指南
这个仓库没有索引到贡献指南
调研方向
首先,使用两个 Fact 比较来复现所示的 Rule 条件,并跟踪 Condition 结果是如何组装的。当结果公开左侧和右侧 Fact 的已解析值,并覆盖此比较用例时,该更改即完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript
- 领域
- backend
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 42/100