oracular 0.7.0 → 0.7.1
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/CHANGELOG.md +6 -0
- package/dist/index.cjs +5 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#42](https://github.com/Yuribenjamin/oracular/pull/42) [`44fee50`](https://github.com/Yuribenjamin/oracular/commit/44fee509d28f5c7ad6ef77a53cfa5952db50560b) Thanks [@Yuribenjamin](https://github.com/Yuribenjamin)! - **A load then a save writes the same string.** `deserialize` rebuilt the open episode's per-intent records in the order the config lists intents, while `observe` writes them in the order the intents were first touched in that episode. The content was identical, and the order of keys in a serialized state is not API, but an app that skips a save when the string has not changed, a common persistence pattern, wrote once spuriously after every load. `deserialize` now keeps the stored order and drops only intents the config no longer declares, so `serialize(deserialize(json))` is `json` on the first pass. The property-based tests pin it.
|
|
8
|
+
|
|
3
9
|
## 0.7.0
|
|
4
10
|
|
|
5
11
|
### Minor Changes
|
package/dist/index.cjs
CHANGED
|
@@ -1011,8 +1011,11 @@ function reconcile(raw, config) {
|
|
|
1011
1011
|
keep(stored.contributions, intent.signals)
|
|
1012
1012
|
);
|
|
1013
1013
|
}
|
|
1014
|
-
|
|
1015
|
-
|
|
1014
|
+
}
|
|
1015
|
+
if (raw.episode.startedAt !== null) {
|
|
1016
|
+
for (const [name, episode] of Object.entries(raw.episode.intents)) {
|
|
1017
|
+
const intent = getOwn(config.intents, name);
|
|
1018
|
+
if (intent === void 0) continue;
|
|
1016
1019
|
const seen = episode.seen.filter(
|
|
1017
1020
|
(s, i) => hasOwn(intent.signals, s) && episode.seen.indexOf(s) === i
|
|
1018
1021
|
);
|