@agentwhy/cli 0.3.0 → 0.3.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/dist/adapter/codex/contract/assumptions.js +4 -4
- package/dist/adapter/codex/contract/deliveries.js +12 -0
- package/dist/adapter/codex/contract/messages.js +8 -1
- package/dist/adapter/codex/events/cell-commands.js +191 -0
- package/dist/adapter/codex/events/delivered-output.js +30 -0
- package/dist/adapter/codex/events/rollout-scan.js +99 -7
- package/dist/core/access/command-line.js +4 -1
- package/dist/core/access/listing.js +10 -3
- package/dist/core/access/protected-access.js +94 -1
- package/dist/core/access/recorded-effect.js +22 -1
- package/dist/report/build-report.js +125 -19
- package/dist/report/render/report-page/file-story.js +33 -2
- package/dist/report/render/report-page/files-view.js +176 -55
- package/dist/report/render/report-page/files.js +51 -8
- package/dist/report/render/report-page/fix-wizard-script.js +17 -7
- package/dist/report/render/report-page/fix-wizard.js +4 -1
- package/dist/report/render/report-page/helpers.js +2 -1
- package/dist/report/render/report-page/report-page-renderer.js +51 -12
- package/dist/report/render/report-page/story-window.js +33 -12
- package/dist/report/render/report-page/to-do-view.js +42 -10
- package/dist/report/render/ui/app-sidebar.js +31 -2
- package/dist/report/render/ui/confirm-dialog.js +69 -4
- package/dist/report/render/ui/words/app-words.js +6 -0
- package/dist/report/render/ui/words/report-words.js +114 -12
- package/dist/report/render/ui/words/settings-words.js +12 -9
- package/dist/report/start/conversations/calendar-view.js +1 -1
- package/dist/report/start/conversations/conversation-columns.js +6 -4
- package/dist/report/start/conversations/period-section.js +11 -10
- package/dist/report/start/conversations/periods.js +7 -1
- package/dist/report/start/render/session-status.js +14 -9
- package/dist/report/start/session-start.js +6 -3
- package/dist/report/start/settings/alerts-tab.js +2 -1
- package/package.json +1 -1
|
@@ -14,19 +14,24 @@ export function statusOf(entry) {
|
|
|
14
14
|
const { tally, incomplete } = entry.report;
|
|
15
15
|
if (tally.contentsSeen > 0)
|
|
16
16
|
return 'seen';
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
//
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
17
|
+
// `codex-blocks-too` CK12, amended 2026-10-05 by the maintainer: an attempt agentwhy stopped is a fact in its own
|
|
18
|
+
// words, and outranks a name seen - the agent found the file, was stopped from opening it, and the rule held. Never
|
|
19
|
+
// where an attempt has no known end: then what happened to it is not known.
|
|
20
|
+
if (tally.refusedAttempts > 0 && tally.unknownAttempts === 0)
|
|
21
|
+
return 'blocked';
|
|
22
|
+
// F17, X10: an attempt with no known end, on a record with gaps, leaves what the agent saw not known, whatever names
|
|
23
|
+
// it saw beside it - and so does a file's text a process printed that no agent is shown to have received (X14).
|
|
24
|
+
if (incomplete && (tally.unknownAttempts > 0 || (tally.printedUnseen ?? 0) > 0))
|
|
25
|
+
return 'unknown';
|
|
26
|
+
// A gap does not unmake what the record did establish: a name seen is said, as the report's headline says it
|
|
27
|
+
// (amended 2026-10-05 - every Codex record has a gap, and each reach of theirs short of a read was hidden behind it).
|
|
24
28
|
if (tally.filesReached > 0 && tally.onlyThroughResult === tally.filesReached)
|
|
25
29
|
return 'result';
|
|
26
30
|
if (tally.filesReached > 0)
|
|
27
31
|
return 'named';
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
// F17: short of a reach, a record with gaps cannot say nothing needs doing.
|
|
33
|
+
if (incomplete)
|
|
34
|
+
return 'unknown';
|
|
30
35
|
return 'clean';
|
|
31
36
|
}
|
|
32
37
|
/**
|
|
@@ -910,7 +910,7 @@ function entryOf(name, title, session, report) {
|
|
|
910
910
|
* call named it, it only appeared in a result, or its outcome is not recorded. The same four the row's badge
|
|
911
911
|
* climbs, so a row and the files under it never disagree.
|
|
912
912
|
*/
|
|
913
|
-
function filesOf(actions) {
|
|
913
|
+
export function filesOf(actions) {
|
|
914
914
|
const strongest = new Map();
|
|
915
915
|
const add = (path, kind) => {
|
|
916
916
|
if (!strongest.has(path))
|
|
@@ -922,10 +922,13 @@ function filesOf(actions) {
|
|
|
922
922
|
add(route.path, 'named');
|
|
923
923
|
for (const path of actions.onlyInResults)
|
|
924
924
|
add(path, 'result');
|
|
925
|
-
for
|
|
926
|
-
|
|
925
|
+
// F57a: a file the record shows was read, and that the person chose Track for, is told whatever else was tried on it.
|
|
926
|
+
// `actionsOf` keeps a told path off every other list but `unknown`, so read after it, a search that matched nothing
|
|
927
|
+
// made a tracked file read through `head` an unknown one, and its row asked for a fix (found 2026-10-05).
|
|
927
928
|
for (const path of actions.told ?? [])
|
|
928
929
|
add(path, 'told');
|
|
930
|
+
for (const path of actions.unknown)
|
|
931
|
+
add(path, 'unknown');
|
|
929
932
|
return [...strongest.values()];
|
|
930
933
|
}
|
|
931
934
|
/** A policy as one comparable value: what it protects, how, and its exceptions (F57). */
|
|
@@ -40,6 +40,7 @@ export function alertsTab(view) {
|
|
|
40
40
|
row({
|
|
41
41
|
tone: 'mint',
|
|
42
42
|
key: 'stopped',
|
|
43
|
+
says: 'line',
|
|
43
44
|
locked: view.stopped.locked,
|
|
44
45
|
state: optional(view.stopped.on, view.stopped.locked),
|
|
45
46
|
control: view.stopped.locked ? lockedSwitch('stopped', turnOn) : toggleSwitch({
|
|
@@ -100,7 +101,7 @@ function row(spec) {
|
|
|
100
101
|
? tag(inLanguages((t) => t('set.card.read.badge')), 'mint', 'badge')
|
|
101
102
|
: tag(inLanguages((t) => t('set.card.optional')), 'grey', 'badge')) + '</div>' +
|
|
102
103
|
'<p class="set-msg-why">' + word('when') + '</p>' +
|
|
103
|
-
chatExample({ tone: spec.tone, ai: inLanguages((t) => t('set.chat.ai')), answer: word('answer') }) +
|
|
104
|
+
chatExample({ tone: spec.tone, ai: inLanguages((t) => t(spec.says === 'line' ? 'set.chat.line' : 'set.chat.ai')), answer: word('answer') }) +
|
|
104
105
|
(spec.state === undefined ? '' : stateLine(spec.state)) +
|
|
105
106
|
'<p class="set-say" data-set-say hidden></p>' +
|
|
106
107
|
'</div>' + spec.control + '</article>';
|