@saihm/shm 0.0.0-stage → 0.38.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/LICENSE +97 -0
- package/NOTICE +12 -0
- package/README.md +159 -2
- package/dist/adapter/epoch.d.ts +4 -0
- package/dist/adapter/epoch.d.ts.map +1 -0
- package/dist/adapter/epoch.js +16 -0
- package/dist/adapter/epoch.js.map +1 -0
- package/dist/adapter/frontmatter.d.ts +19 -0
- package/dist/adapter/frontmatter.d.ts.map +1 -0
- package/dist/adapter/frontmatter.js +95 -0
- package/dist/adapter/frontmatter.js.map +1 -0
- package/dist/adapter/index.d.ts +4 -0
- package/dist/adapter/index.d.ts.map +1 -0
- package/dist/adapter/index.js +4 -0
- package/dist/adapter/index.js.map +1 -0
- package/dist/adapter/markdown_dir_port.d.ts +48 -0
- package/dist/adapter/markdown_dir_port.d.ts.map +1 -0
- package/dist/adapter/markdown_dir_port.js +175 -0
- package/dist/adapter/markdown_dir_port.js.map +1 -0
- package/dist/aggregate/document_aggregation.d.ts +40 -0
- package/dist/aggregate/document_aggregation.d.ts.map +1 -0
- package/dist/aggregate/document_aggregation.js +101 -0
- package/dist/aggregate/document_aggregation.js.map +1 -0
- package/dist/aggregate/index.d.ts +2 -0
- package/dist/aggregate/index.d.ts.map +1 -0
- package/dist/aggregate/index.js +2 -0
- package/dist/aggregate/index.js.map +1 -0
- package/dist/answer/answer_layer.d.ts +33 -0
- package/dist/answer/answer_layer.d.ts.map +1 -0
- package/dist/answer/answer_layer.js +75 -0
- package/dist/answer/answer_layer.js.map +1 -0
- package/dist/answer/caching_body_source.d.ts +42 -0
- package/dist/answer/caching_body_source.d.ts.map +1 -0
- package/dist/answer/caching_body_source.js +120 -0
- package/dist/answer/caching_body_source.js.map +1 -0
- package/dist/answer/claude_cli_backend.d.ts +10 -0
- package/dist/answer/claude_cli_backend.d.ts.map +1 -0
- package/dist/answer/claude_cli_backend.js +60 -0
- package/dist/answer/claude_cli_backend.js.map +1 -0
- package/dist/answer/context.d.ts +6 -0
- package/dist/answer/context.d.ts.map +1 -0
- package/dist/answer/context.js +83 -0
- package/dist/answer/context.js.map +1 -0
- package/dist/answer/corpus_warmer.d.ts +44 -0
- package/dist/answer/corpus_warmer.d.ts.map +1 -0
- package/dist/answer/corpus_warmer.js +80 -0
- package/dist/answer/corpus_warmer.js.map +1 -0
- package/dist/answer/gate.d.ts +3 -0
- package/dist/answer/gate.d.ts.map +1 -0
- package/dist/answer/gate.js +35 -0
- package/dist/answer/gate.js.map +1 -0
- package/dist/answer/index.d.ts +20 -0
- package/dist/answer/index.d.ts.map +1 -0
- package/dist/answer/index.js +11 -0
- package/dist/answer/index.js.map +1 -0
- package/dist/answer/own_cell_body_source.d.ts +34 -0
- package/dist/answer/own_cell_body_source.d.ts.map +1 -0
- package/dist/answer/own_cell_body_source.js +66 -0
- package/dist/answer/own_cell_body_source.js.map +1 -0
- package/dist/answer/persistent_body_source.d.ts +50 -0
- package/dist/answer/persistent_body_source.d.ts.map +1 -0
- package/dist/answer/persistent_body_source.js +173 -0
- package/dist/answer/persistent_body_source.js.map +1 -0
- package/dist/answer/saihm_body_source.d.ts +27 -0
- package/dist/answer/saihm_body_source.d.ts.map +1 -0
- package/dist/answer/saihm_body_source.js +88 -0
- package/dist/answer/saihm_body_source.js.map +1 -0
- package/dist/answer/structured_answerer.d.ts +23 -0
- package/dist/answer/structured_answerer.d.ts.map +1 -0
- package/dist/answer/structured_answerer.js +103 -0
- package/dist/answer/structured_answerer.js.map +1 -0
- package/dist/answer/supersede.d.ts +12 -0
- package/dist/answer/supersede.d.ts.map +1 -0
- package/dist/answer/supersede.js +27 -0
- package/dist/answer/supersede.js.map +1 -0
- package/dist/answer/types.d.ts +53 -0
- package/dist/answer/types.d.ts.map +1 -0
- package/dist/answer/types.js +2 -0
- package/dist/answer/types.js.map +1 -0
- package/dist/assemble/brief.d.ts +83 -0
- package/dist/assemble/brief.d.ts.map +1 -0
- package/dist/assemble/brief.js +312 -0
- package/dist/assemble/brief.js.map +1 -0
- package/dist/assemble/index.d.ts +4 -0
- package/dist/assemble/index.d.ts.map +1 -0
- package/dist/assemble/index.js +4 -0
- package/dist/assemble/index.js.map +1 -0
- package/dist/assemble/posture.d.ts +23 -0
- package/dist/assemble/posture.d.ts.map +1 -0
- package/dist/assemble/posture.js +68 -0
- package/dist/assemble/posture.js.map +1 -0
- package/dist/assemble/thread.d.ts +53 -0
- package/dist/assemble/thread.d.ts.map +1 -0
- package/dist/assemble/thread.js +122 -0
- package/dist/assemble/thread.js.map +1 -0
- package/dist/attention/index.d.ts +5 -0
- package/dist/attention/index.d.ts.map +1 -0
- package/dist/attention/index.js +3 -0
- package/dist/attention/index.js.map +1 -0
- package/dist/attention/obligations.d.ts +23 -0
- package/dist/attention/obligations.d.ts.map +1 -0
- package/dist/attention/obligations.js +110 -0
- package/dist/attention/obligations.js.map +1 -0
- package/dist/attention/queue.d.ts +38 -0
- package/dist/attention/queue.d.ts.map +1 -0
- package/dist/attention/queue.js +102 -0
- package/dist/attention/queue.js.map +1 -0
- package/dist/claim/index.d.ts +23 -0
- package/dist/claim/index.d.ts.map +1 -0
- package/dist/claim/index.js +57 -0
- package/dist/claim/index.js.map +1 -0
- package/dist/claim/withdrawn.d.ts +17 -0
- package/dist/claim/withdrawn.d.ts.map +1 -0
- package/dist/claim/withdrawn.js +41 -0
- package/dist/claim/withdrawn.js.map +1 -0
- package/dist/compliance/index.d.ts +3 -0
- package/dist/compliance/index.d.ts.map +1 -0
- package/dist/compliance/index.js +3 -0
- package/dist/compliance/index.js.map +1 -0
- package/dist/compliance/report.d.ts +123 -0
- package/dist/compliance/report.d.ts.map +1 -0
- package/dist/compliance/report.js +295 -0
- package/dist/compliance/report.js.map +1 -0
- package/dist/compliance/trail.d.ts +180 -0
- package/dist/compliance/trail.d.ts.map +1 -0
- package/dist/compliance/trail.js +130 -0
- package/dist/compliance/trail.js.map +1 -0
- package/dist/consolidate/body_redundancy.d.ts +54 -0
- package/dist/consolidate/body_redundancy.d.ts.map +1 -0
- package/dist/consolidate/body_redundancy.js +150 -0
- package/dist/consolidate/body_redundancy.js.map +1 -0
- package/dist/consolidate/consolidator.d.ts +62 -0
- package/dist/consolidate/consolidator.d.ts.map +1 -0
- package/dist/consolidate/consolidator.js +260 -0
- package/dist/consolidate/consolidator.js.map +1 -0
- package/dist/consolidate/index.d.ts +4 -0
- package/dist/consolidate/index.d.ts.map +1 -0
- package/dist/consolidate/index.js +4 -0
- package/dist/consolidate/index.js.map +1 -0
- package/dist/consolidate/index_guard.d.ts +63 -0
- package/dist/consolidate/index_guard.d.ts.map +1 -0
- package/dist/consolidate/index_guard.js +212 -0
- package/dist/consolidate/index_guard.js.map +1 -0
- package/dist/coordination/identity.d.ts +39 -0
- package/dist/coordination/identity.d.ts.map +1 -0
- package/dist/coordination/identity.js +97 -0
- package/dist/coordination/identity.js.map +1 -0
- package/dist/coordination/inbound.d.ts +41 -0
- package/dist/coordination/inbound.d.ts.map +1 -0
- package/dist/coordination/inbound.js +119 -0
- package/dist/coordination/inbound.js.map +1 -0
- package/dist/coordination/index.d.ts +12 -0
- package/dist/coordination/index.d.ts.map +1 -0
- package/dist/coordination/index.js +7 -0
- package/dist/coordination/index.js.map +1 -0
- package/dist/coordination/note_lineage.d.ts +50 -0
- package/dist/coordination/note_lineage.d.ts.map +1 -0
- package/dist/coordination/note_lineage.js +132 -0
- package/dist/coordination/note_lineage.js.map +1 -0
- package/dist/coordination/outbound.d.ts +33 -0
- package/dist/coordination/outbound.d.ts.map +1 -0
- package/dist/coordination/outbound.js +69 -0
- package/dist/coordination/outbound.js.map +1 -0
- package/dist/coordination/share_states.d.ts +178 -0
- package/dist/coordination/share_states.d.ts.map +1 -0
- package/dist/coordination/share_states.js +864 -0
- package/dist/coordination/share_states.js.map +1 -0
- package/dist/coordination/untrusted_text.d.ts +3 -0
- package/dist/coordination/untrusted_text.d.ts.map +1 -0
- package/dist/coordination/untrusted_text.js +21 -0
- package/dist/coordination/untrusted_text.js.map +1 -0
- package/dist/deref/dereference.d.ts +68 -0
- package/dist/deref/dereference.d.ts.map +1 -0
- package/dist/deref/dereference.js +199 -0
- package/dist/deref/dereference.js.map +1 -0
- package/dist/deref/index.d.ts +3 -0
- package/dist/deref/index.d.ts.map +1 -0
- package/dist/deref/index.js +3 -0
- package/dist/deref/index.js.map +1 -0
- package/dist/deref/policy.d.ts +76 -0
- package/dist/deref/policy.d.ts.map +1 -0
- package/dist/deref/policy.js +281 -0
- package/dist/deref/policy.js.map +1 -0
- package/dist/derived/checkpoint.d.ts +22 -0
- package/dist/derived/checkpoint.d.ts.map +1 -0
- package/dist/derived/checkpoint.js +92 -0
- package/dist/derived/checkpoint.js.map +1 -0
- package/dist/derived/codec.d.ts +26 -0
- package/dist/derived/codec.d.ts.map +1 -0
- package/dist/derived/codec.js +116 -0
- package/dist/derived/codec.js.map +1 -0
- package/dist/derived/cycle.d.ts +96 -0
- package/dist/derived/cycle.d.ts.map +1 -0
- package/dist/derived/cycle.js +199 -0
- package/dist/derived/cycle.js.map +1 -0
- package/dist/derived/index.d.ts +7 -0
- package/dist/derived/index.d.ts.map +1 -0
- package/dist/derived/index.js +7 -0
- package/dist/derived/index.js.map +1 -0
- package/dist/derived/ledger.d.ts +54 -0
- package/dist/derived/ledger.d.ts.map +1 -0
- package/dist/derived/ledger.js +123 -0
- package/dist/derived/ledger.js.map +1 -0
- package/dist/derived/lineage_index.d.ts +17 -0
- package/dist/derived/lineage_index.d.ts.map +1 -0
- package/dist/derived/lineage_index.js +51 -0
- package/dist/derived/lineage_index.js.map +1 -0
- package/dist/derived/store.d.ts +92 -0
- package/dist/derived/store.d.ts.map +1 -0
- package/dist/derived/store.js +230 -0
- package/dist/derived/store.js.map +1 -0
- package/dist/embed/index.d.ts +5 -0
- package/dist/embed/index.d.ts.map +1 -0
- package/dist/embed/index.js +4 -0
- package/dist/embed/index.js.map +1 -0
- package/dist/embed/local_minilm.d.ts +9 -0
- package/dist/embed/local_minilm.d.ts.map +1 -0
- package/dist/embed/local_minilm.js +31 -0
- package/dist/embed/local_minilm.js.map +1 -0
- package/dist/embed/remote_http.d.ts +26 -0
- package/dist/embed/remote_http.d.ts.map +1 -0
- package/dist/embed/remote_http.js +40 -0
- package/dist/embed/remote_http.js.map +1 -0
- package/dist/embed/router.d.ts +16 -0
- package/dist/embed/router.d.ts.map +1 -0
- package/dist/embed/router.js +47 -0
- package/dist/embed/router.js.map +1 -0
- package/dist/embed/types.d.ts +23 -0
- package/dist/embed/types.d.ts.map +1 -0
- package/dist/embed/types.js +2 -0
- package/dist/embed/types.js.map +1 -0
- package/dist/entitlement/entitlement.d.ts +24 -0
- package/dist/entitlement/entitlement.d.ts.map +1 -0
- package/dist/entitlement/entitlement.js +78 -0
- package/dist/entitlement/entitlement.js.map +1 -0
- package/dist/entitlement/index.d.ts +2 -0
- package/dist/entitlement/index.d.ts.map +1 -0
- package/dist/entitlement/index.js +2 -0
- package/dist/entitlement/index.js.map +1 -0
- package/dist/erasure/bus.d.ts +18 -0
- package/dist/erasure/bus.d.ts.map +1 -0
- package/dist/erasure/bus.js +56 -0
- package/dist/erasure/bus.js.map +1 -0
- package/dist/erasure/changes_feed.d.ts +125 -0
- package/dist/erasure/changes_feed.d.ts.map +1 -0
- package/dist/erasure/changes_feed.js +252 -0
- package/dist/erasure/changes_feed.js.map +1 -0
- package/dist/erasure/changes_reader.d.ts +44 -0
- package/dist/erasure/changes_reader.d.ts.map +1 -0
- package/dist/erasure/changes_reader.js +184 -0
- package/dist/erasure/changes_reader.js.map +1 -0
- package/dist/erasure/feed_watcher.d.ts +140 -0
- package/dist/erasure/feed_watcher.d.ts.map +1 -0
- package/dist/erasure/feed_watcher.js +418 -0
- package/dist/erasure/feed_watcher.js.map +1 -0
- package/dist/erasure/index.d.ts +15 -0
- package/dist/erasure/index.d.ts.map +1 -0
- package/dist/erasure/index.js +8 -0
- package/dist/erasure/index.js.map +1 -0
- package/dist/erasure/index_watcher.d.ts +28 -0
- package/dist/erasure/index_watcher.d.ts.map +1 -0
- package/dist/erasure/index_watcher.js +87 -0
- package/dist/erasure/index_watcher.js.map +1 -0
- package/dist/erasure/reconcile.d.ts +72 -0
- package/dist/erasure/reconcile.d.ts.map +1 -0
- package/dist/erasure/reconcile.js +125 -0
- package/dist/erasure/reconcile.js.map +1 -0
- package/dist/erasure/withheld_store.d.ts +30 -0
- package/dist/erasure/withheld_store.d.ts.map +1 -0
- package/dist/erasure/withheld_store.js +91 -0
- package/dist/erasure/withheld_store.js.map +1 -0
- package/dist/fleet/index.d.ts +2 -0
- package/dist/fleet/index.d.ts.map +1 -0
- package/dist/fleet/index.js +2 -0
- package/dist/fleet/index.js.map +1 -0
- package/dist/fleet/knowledge.d.ts +74 -0
- package/dist/fleet/knowledge.d.ts.map +1 -0
- package/dist/fleet/knowledge.js +178 -0
- package/dist/fleet/knowledge.js.map +1 -0
- package/dist/gate/index.d.ts +5 -0
- package/dist/gate/index.d.ts.map +1 -0
- package/dist/gate/index.js +3 -0
- package/dist/gate/index.js.map +1 -0
- package/dist/gate/scope.d.ts +21 -0
- package/dist/gate/scope.d.ts.map +1 -0
- package/dist/gate/scope.js +40 -0
- package/dist/gate/scope.js.map +1 -0
- package/dist/gate/symmetry.d.ts +55 -0
- package/dist/gate/symmetry.d.ts.map +1 -0
- package/dist/gate/symmetry.js +162 -0
- package/dist/gate/symmetry.js.map +1 -0
- package/dist/history/answerable.d.ts +51 -0
- package/dist/history/answerable.d.ts.map +1 -0
- package/dist/history/answerable.js +112 -0
- package/dist/history/answerable.js.map +1 -0
- package/dist/history/index.d.ts +2 -0
- package/dist/history/index.d.ts.map +1 -0
- package/dist/history/index.js +2 -0
- package/dist/history/index.js.map +1 -0
- package/dist/host/adapter.d.ts +69 -0
- package/dist/host/adapter.d.ts.map +1 -0
- package/dist/host/adapter.js +159 -0
- package/dist/host/adapter.js.map +1 -0
- package/dist/host/cli.d.ts +3 -0
- package/dist/host/cli.d.ts.map +1 -0
- package/dist/host/cli.js +44 -0
- package/dist/host/cli.js.map +1 -0
- package/dist/host/client.d.ts +22 -0
- package/dist/host/client.d.ts.map +1 -0
- package/dist/host/client.js +135 -0
- package/dist/host/client.js.map +1 -0
- package/dist/host/compaction.d.ts +16 -0
- package/dist/host/compaction.d.ts.map +1 -0
- package/dist/host/compaction.js +89 -0
- package/dist/host/compaction.js.map +1 -0
- package/dist/host/event.d.ts +22 -0
- package/dist/host/event.d.ts.map +1 -0
- package/dist/host/event.js +47 -0
- package/dist/host/event.js.map +1 -0
- package/dist/host/index.d.ts +10 -0
- package/dist/host/index.d.ts.map +1 -0
- package/dist/host/index.js +10 -0
- package/dist/host/index.js.map +1 -0
- package/dist/host/reply.d.ts +11 -0
- package/dist/host/reply.d.ts.map +1 -0
- package/dist/host/reply.js +24 -0
- package/dist/host/reply.js.map +1 -0
- package/dist/host/session_brief.d.ts +80 -0
- package/dist/host/session_brief.d.ts.map +1 -0
- package/dist/host/session_brief.js +294 -0
- package/dist/host/session_brief.js.map +1 -0
- package/dist/host/session_start_event.d.ts +12 -0
- package/dist/host/session_start_event.d.ts.map +1 -0
- package/dist/host/session_start_event.js +35 -0
- package/dist/host/session_start_event.js.map +1 -0
- package/dist/host/sessions.d.ts +8 -0
- package/dist/host/sessions.d.ts.map +1 -0
- package/dist/host/sessions.js +32 -0
- package/dist/host/sessions.js.map +1 -0
- package/dist/host/socket_path.d.ts +3 -0
- package/dist/host/socket_path.d.ts.map +1 -0
- package/dist/host/socket_path.js +14 -0
- package/dist/host/socket_path.js.map +1 -0
- package/dist/inbound/index.d.ts +8 -0
- package/dist/inbound/index.d.ts.map +1 -0
- package/dist/inbound/index.js +5 -0
- package/dist/inbound/index.js.map +1 -0
- package/dist/index.d.ts +108 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/dist/ingest/index.d.ts +13 -0
- package/dist/ingest/index.d.ts.map +1 -0
- package/dist/ingest/index.js +146 -0
- package/dist/ingest/index.js.map +1 -0
- package/dist/ingest/parse.d.ts +20 -0
- package/dist/ingest/parse.d.ts.map +1 -0
- package/dist/ingest/parse.js +141 -0
- package/dist/ingest/parse.js.map +1 -0
- package/dist/ingest/resolve_prefix.d.ts +19 -0
- package/dist/ingest/resolve_prefix.d.ts.map +1 -0
- package/dist/ingest/resolve_prefix.js +63 -0
- package/dist/ingest/resolve_prefix.js.map +1 -0
- package/dist/ingest/types.d.ts +47 -0
- package/dist/ingest/types.d.ts.map +1 -0
- package/dist/ingest/types.js +2 -0
- package/dist/ingest/types.js.map +1 -0
- package/dist/inject/action_cue.d.ts +11 -0
- package/dist/inject/action_cue.d.ts.map +1 -0
- package/dist/inject/action_cue.js +49 -0
- package/dist/inject/action_cue.js.map +1 -0
- package/dist/inject/index.d.ts +11 -0
- package/dist/inject/index.d.ts.map +1 -0
- package/dist/inject/index.js +6 -0
- package/dist/inject/index.js.map +1 -0
- package/dist/inject/novelty.d.ts +19 -0
- package/dist/inject/novelty.d.ts.map +1 -0
- package/dist/inject/novelty.js +34 -0
- package/dist/inject/novelty.js.map +1 -0
- package/dist/inject/outcome.d.ts +20 -0
- package/dist/inject/outcome.d.ts.map +1 -0
- package/dist/inject/outcome.js +26 -0
- package/dist/inject/outcome.js.map +1 -0
- package/dist/inject/population.d.ts +6 -0
- package/dist/inject/population.d.ts.map +1 -0
- package/dist/inject/population.js +23 -0
- package/dist/inject/population.js.map +1 -0
- package/dist/inject/proactive_injector.d.ts +56 -0
- package/dist/inject/proactive_injector.d.ts.map +1 -0
- package/dist/inject/proactive_injector.js +153 -0
- package/dist/inject/proactive_injector.js.map +1 -0
- package/dist/inject/token_estimate.d.ts +3 -0
- package/dist/inject/token_estimate.d.ts.map +1 -0
- package/dist/inject/token_estimate.js +2 -0
- package/dist/inject/token_estimate.js.map +1 -0
- package/dist/inject/window.d.ts +6 -0
- package/dist/inject/window.d.ts.map +1 -0
- package/dist/inject/window.js +10 -0
- package/dist/inject/window.js.map +1 -0
- package/dist/modes/behaviour_modes.d.ts +21 -0
- package/dist/modes/behaviour_modes.d.ts.map +1 -0
- package/dist/modes/behaviour_modes.js +137 -0
- package/dist/modes/behaviour_modes.js.map +1 -0
- package/dist/policy/index.d.ts +2 -0
- package/dist/policy/index.d.ts.map +1 -0
- package/dist/policy/index.js +2 -0
- package/dist/policy/index.js.map +1 -0
- package/dist/policy/store_policy.d.ts +47 -0
- package/dist/policy/store_policy.d.ts.map +1 -0
- package/dist/policy/store_policy.js +125 -0
- package/dist/policy/store_policy.js.map +1 -0
- package/dist/profile/index.d.ts +5 -0
- package/dist/profile/index.d.ts.map +1 -0
- package/dist/profile/index.js +3 -0
- package/dist/profile/index.js.map +1 -0
- package/dist/profile/lever_profile.d.ts +27 -0
- package/dist/profile/lever_profile.d.ts.map +1 -0
- package/dist/profile/lever_profile.js +55 -0
- package/dist/profile/lever_profile.js.map +1 -0
- package/dist/profile/production.d.ts +12 -0
- package/dist/profile/production.d.ts.map +1 -0
- package/dist/profile/production.js +13 -0
- package/dist/profile/production.js.map +1 -0
- package/dist/provenance/build_fingerprint.d.ts +9 -0
- package/dist/provenance/build_fingerprint.d.ts.map +1 -0
- package/dist/provenance/build_fingerprint.js +47 -0
- package/dist/provenance/build_fingerprint.js.map +1 -0
- package/dist/provenance/derived_number.d.ts +33 -0
- package/dist/provenance/derived_number.d.ts.map +1 -0
- package/dist/provenance/derived_number.js +52 -0
- package/dist/provenance/derived_number.js.map +1 -0
- package/dist/provenance/index.d.ts +7 -0
- package/dist/provenance/index.d.ts.map +1 -0
- package/dist/provenance/index.js +4 -0
- package/dist/provenance/index.js.map +1 -0
- package/dist/provenance/live_state.d.ts +49 -0
- package/dist/provenance/live_state.d.ts.map +1 -0
- package/dist/provenance/live_state.js +141 -0
- package/dist/provenance/live_state.js.map +1 -0
- package/dist/rerank/cross_encoder.d.ts +14 -0
- package/dist/rerank/cross_encoder.d.ts.map +1 -0
- package/dist/rerank/cross_encoder.js +40 -0
- package/dist/rerank/cross_encoder.js.map +1 -0
- package/dist/rerank/identity.d.ts +6 -0
- package/dist/rerank/identity.d.ts.map +1 -0
- package/dist/rerank/identity.js +7 -0
- package/dist/rerank/identity.js.map +1 -0
- package/dist/rerank/index.d.ts +8 -0
- package/dist/rerank/index.d.ts.map +1 -0
- package/dist/rerank/index.js +5 -0
- package/dist/rerank/index.js.map +1 -0
- package/dist/rerank/reranking_retriever.d.ts +20 -0
- package/dist/rerank/reranking_retriever.d.ts.map +1 -0
- package/dist/rerank/reranking_retriever.js +38 -0
- package/dist/rerank/reranking_retriever.js.map +1 -0
- package/dist/rerank/reranking_select.d.ts +33 -0
- package/dist/rerank/reranking_select.d.ts.map +1 -0
- package/dist/rerank/reranking_select.js +116 -0
- package/dist/rerank/reranking_select.js.map +1 -0
- package/dist/rerank/types.d.ts +9 -0
- package/dist/rerank/types.d.ts.map +1 -0
- package/dist/rerank/types.js +2 -0
- package/dist/rerank/types.js.map +1 -0
- package/dist/resume/index.d.ts +3 -0
- package/dist/resume/index.d.ts.map +1 -0
- package/dist/resume/index.js +2 -0
- package/dist/resume/index.js.map +1 -0
- package/dist/resume/resume.d.ts +33 -0
- package/dist/resume/resume.d.ts.map +1 -0
- package/dist/resume/resume.js +86 -0
- package/dist/resume/resume.js.map +1 -0
- package/dist/retrieval/hnsw_store.d.ts +37 -0
- package/dist/retrieval/hnsw_store.d.ts.map +1 -0
- package/dist/retrieval/hnsw_store.js +284 -0
- package/dist/retrieval/hnsw_store.js.map +1 -0
- package/dist/retrieval/label_text.d.ts +2 -0
- package/dist/retrieval/label_text.d.ts.map +1 -0
- package/dist/retrieval/label_text.js +7 -0
- package/dist/retrieval/label_text.js.map +1 -0
- package/dist/retrieval/link_graph.d.ts +38 -0
- package/dist/retrieval/link_graph.d.ts.map +1 -0
- package/dist/retrieval/link_graph.js +118 -0
- package/dist/retrieval/link_graph.js.map +1 -0
- package/dist/retrieval/query_expansion.d.ts +18 -0
- package/dist/retrieval/query_expansion.d.ts.map +1 -0
- package/dist/retrieval/query_expansion.js +55 -0
- package/dist/retrieval/query_expansion.js.map +1 -0
- package/dist/retrieval/scope.d.ts +36 -0
- package/dist/retrieval/scope.d.ts.map +1 -0
- package/dist/retrieval/scope.js +120 -0
- package/dist/retrieval/scope.js.map +1 -0
- package/dist/retrieval/semantic.d.ts +136 -0
- package/dist/retrieval/semantic.d.ts.map +1 -0
- package/dist/retrieval/semantic.js +490 -0
- package/dist/retrieval/semantic.js.map +1 -0
- package/dist/retrieval/session_closed.d.ts +5 -0
- package/dist/retrieval/session_closed.d.ts.map +1 -0
- package/dist/retrieval/session_closed.js +8 -0
- package/dist/retrieval/session_closed.js.map +1 -0
- package/dist/retrieval/thread_lifecycle.d.ts +68 -0
- package/dist/retrieval/thread_lifecycle.d.ts.map +1 -0
- package/dist/retrieval/thread_lifecycle.js +201 -0
- package/dist/retrieval/thread_lifecycle.js.map +1 -0
- package/dist/retrieval/vector_store.d.ts +22 -0
- package/dist/retrieval/vector_store.d.ts.map +1 -0
- package/dist/retrieval/vector_store.js +41 -0
- package/dist/retrieval/vector_store.js.map +1 -0
- package/dist/retrieval/version_supersession.d.ts +13 -0
- package/dist/retrieval/version_supersession.d.ts.map +1 -0
- package/dist/retrieval/version_supersession.js +97 -0
- package/dist/retrieval/version_supersession.js.map +1 -0
- package/dist/saihm_client/federated_port.d.ts +30 -0
- package/dist/saihm_client/federated_port.d.ts.map +1 -0
- package/dist/saihm_client/federated_port.js +99 -0
- package/dist/saihm_client/federated_port.js.map +1 -0
- package/dist/saihm_client/in_memory_port.d.ts +35 -0
- package/dist/saihm_client/in_memory_port.d.ts.map +1 -0
- package/dist/saihm_client/in_memory_port.js +100 -0
- package/dist/saihm_client/in_memory_port.js.map +1 -0
- package/dist/saihm_client/index.d.ts +12 -0
- package/dist/saihm_client/index.d.ts.map +1 -0
- package/dist/saihm_client/index.js +8 -0
- package/dist/saihm_client/index.js.map +1 -0
- package/dist/saihm_client/mcp_client.d.ts +38 -0
- package/dist/saihm_client/mcp_client.d.ts.map +1 -0
- package/dist/saihm_client/mcp_client.js +266 -0
- package/dist/saihm_client/mcp_client.js.map +1 -0
- package/dist/saihm_client/server_features.d.ts +112 -0
- package/dist/saihm_client/server_features.d.ts.map +1 -0
- package/dist/saihm_client/server_features.js +415 -0
- package/dist/saihm_client/server_features.js.map +1 -0
- package/dist/saihm_client/share_guard.d.ts +9 -0
- package/dist/saihm_client/share_guard.d.ts.map +1 -0
- package/dist/saihm_client/share_guard.js +53 -0
- package/dist/saihm_client/share_guard.js.map +1 -0
- package/dist/saihm_client/timing.d.ts +100 -0
- package/dist/saihm_client/timing.d.ts.map +1 -0
- package/dist/saihm_client/timing.js +250 -0
- package/dist/saihm_client/timing.js.map +1 -0
- package/dist/saihm_client/types.d.ts +108 -0
- package/dist/saihm_client/types.d.ts.map +1 -0
- package/dist/saihm_client/types.js +19 -0
- package/dist/saihm_client/types.js.map +1 -0
- package/dist/service/handlers.d.ts +91 -0
- package/dist/service/handlers.d.ts.map +1 -0
- package/dist/service/handlers.js +173 -0
- package/dist/service/handlers.js.map +1 -0
- package/dist/service/http.d.ts +27 -0
- package/dist/service/http.d.ts.map +1 -0
- package/dist/service/http.js +261 -0
- package/dist/service/http.js.map +1 -0
- package/dist/service/index.d.ts +5 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +5 -0
- package/dist/service/index.js.map +1 -0
- package/dist/service/resident.d.ts +50 -0
- package/dist/service/resident.d.ts.map +1 -0
- package/dist/service/resident.js +162 -0
- package/dist/service/resident.js.map +1 -0
- package/dist/service/service_level.d.ts +36 -0
- package/dist/service/service_level.d.ts.map +1 -0
- package/dist/service/service_level.js +65 -0
- package/dist/service/service_level.js.map +1 -0
- package/dist/session/change_feed.d.ts +82 -0
- package/dist/session/change_feed.d.ts.map +1 -0
- package/dist/session/change_feed.js +203 -0
- package/dist/session/change_feed.js.map +1 -0
- package/dist/session/index.d.ts +6 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +4 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/memory_session.d.ts +426 -0
- package/dist/session/memory_session.d.ts.map +1 -0
- package/dist/session/memory_session.js +1183 -0
- package/dist/session/memory_session.js.map +1 -0
- package/dist/standing/content_fingerprint.d.ts +28 -0
- package/dist/standing/content_fingerprint.d.ts.map +1 -0
- package/dist/standing/content_fingerprint.js +95 -0
- package/dist/standing/content_fingerprint.js.map +1 -0
- package/dist/standing/standing_answers.d.ts +44 -0
- package/dist/standing/standing_answers.d.ts.map +1 -0
- package/dist/standing/standing_answers.js +72 -0
- package/dist/standing/standing_answers.js.map +1 -0
- package/dist/standing/standing_store.d.ts +44 -0
- package/dist/standing/standing_store.d.ts.map +1 -0
- package/dist/standing/standing_store.js +238 -0
- package/dist/standing/standing_store.js.map +1 -0
- package/dist/standing/surface.d.ts +20 -0
- package/dist/standing/surface.d.ts.map +1 -0
- package/dist/standing/surface.js +74 -0
- package/dist/standing/surface.js.map +1 -0
- package/dist/store/atomic_write.d.ts +7 -0
- package/dist/store/atomic_write.d.ts.map +1 -0
- package/dist/store/atomic_write.js +23 -0
- package/dist/store/atomic_write.js.map +1 -0
- package/dist/store/body_store.d.ts +42 -0
- package/dist/store/body_store.d.ts.map +1 -0
- package/dist/store/body_store.js +252 -0
- package/dist/store/body_store.js.map +1 -0
- package/dist/store/encrypted_store.d.ts +21 -0
- package/dist/store/encrypted_store.d.ts.map +1 -0
- package/dist/store/encrypted_store.js +266 -0
- package/dist/store/encrypted_store.js.map +1 -0
- package/dist/store/index.d.ts +21 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +11 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/index_snapshot.d.ts +15 -0
- package/dist/store/index_snapshot.d.ts.map +1 -0
- package/dist/store/index_snapshot.js +126 -0
- package/dist/store/index_snapshot.js.map +1 -0
- package/dist/store/mcp_warm_start.d.ts +93 -0
- package/dist/store/mcp_warm_start.d.ts.map +1 -0
- package/dist/store/mcp_warm_start.js +406 -0
- package/dist/store/mcp_warm_start.js.map +1 -0
- package/dist/store/require_dir.d.ts +2 -0
- package/dist/store/require_dir.d.ts.map +1 -0
- package/dist/store/require_dir.js +9 -0
- package/dist/store/require_dir.js.map +1 -0
- package/dist/store/snapshot_format.d.ts +43 -0
- package/dist/store/snapshot_format.d.ts.map +1 -0
- package/dist/store/snapshot_format.js +119 -0
- package/dist/store/snapshot_format.js.map +1 -0
- package/dist/store/state_dir.d.ts +19 -0
- package/dist/store/state_dir.d.ts.map +1 -0
- package/dist/store/state_dir.js +42 -0
- package/dist/store/state_dir.js.map +1 -0
- package/dist/store/types.d.ts +37 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +11 -0
- package/dist/store/types.js.map +1 -0
- package/dist/store/warm_index.d.ts +68 -0
- package/dist/store/warm_index.d.ts.map +1 -0
- package/dist/store/warm_index.js +279 -0
- package/dist/store/warm_index.js.map +1 -0
- package/dist/store/warm_start.d.ts +57 -0
- package/dist/store/warm_start.d.ts.map +1 -0
- package/dist/store/warm_start.js +68 -0
- package/dist/store/warm_start.js.map +1 -0
- package/dist/store/writer_lock.d.ts +34 -0
- package/dist/store/writer_lock.d.ts.map +1 -0
- package/dist/store/writer_lock.js +169 -0
- package/dist/store/writer_lock.js.map +1 -0
- package/dist/tiers/index.d.ts +2 -0
- package/dist/tiers/index.d.ts.map +1 -0
- package/dist/tiers/index.js +2 -0
- package/dist/tiers/index.js.map +1 -0
- package/dist/tiers/membership.d.ts +48 -0
- package/dist/tiers/membership.d.ts.map +1 -0
- package/dist/tiers/membership.js +85 -0
- package/dist/tiers/membership.js.map +1 -0
- package/dist/tuning/holdout.d.ts +54 -0
- package/dist/tuning/holdout.d.ts.map +1 -0
- package/dist/tuning/holdout.js +231 -0
- package/dist/tuning/holdout.js.map +1 -0
- package/dist/tuning/index.d.ts +7 -0
- package/dist/tuning/index.d.ts.map +1 -0
- package/dist/tuning/index.js +4 -0
- package/dist/tuning/index.js.map +1 -0
- package/dist/tuning/lever_stack.d.ts +27 -0
- package/dist/tuning/lever_stack.d.ts.map +1 -0
- package/dist/tuning/lever_stack.js +76 -0
- package/dist/tuning/lever_stack.js.map +1 -0
- package/dist/tuning/paired.d.ts +22 -0
- package/dist/tuning/paired.d.ts.map +1 -0
- package/dist/tuning/paired.js +74 -0
- package/dist/tuning/paired.js.map +1 -0
- package/dist/util/concurrency.d.ts +2 -0
- package/dist/util/concurrency.d.ts.map +1 -0
- package/dist/util/concurrency.js +19 -0
- package/dist/util/concurrency.js.map +1 -0
- package/package.json +161 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/assemble/thread.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { obligationsOf, assessEdit } from "./obligations.js";
|
|
2
|
+
export type { Obligation, ObligationKind, Reflow, EditReport } from "./obligations.js";
|
|
3
|
+
export { attentionQueue, THIN_COVERAGE } from "./queue.js";
|
|
4
|
+
export type { AttentionItem, AttentionInput, AttentionReport, AttentionSeverity, CoordinationFinding, CoordinationKind } from "./queue.js";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/attention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/attention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type GateScope } from "../gate/index.js";
|
|
2
|
+
export type ObligationKind = "provenance" | "command" | "pointer" | "prohibition" | "figure";
|
|
3
|
+
export interface Obligation {
|
|
4
|
+
readonly kind: ObligationKind;
|
|
5
|
+
readonly text: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function obligationsOf(text: string, extra?: readonly (readonly [ObligationKind, RegExp])[]): Obligation[];
|
|
8
|
+
export interface Reflow {
|
|
9
|
+
readonly figure: string;
|
|
10
|
+
readonly before: string;
|
|
11
|
+
readonly after: string;
|
|
12
|
+
}
|
|
13
|
+
export interface EditReport {
|
|
14
|
+
readonly lost: readonly Obligation[];
|
|
15
|
+
readonly reflowed: readonly Reflow[];
|
|
16
|
+
readonly keptCount: number;
|
|
17
|
+
readonly beforeCount: number;
|
|
18
|
+
readonly scope: GateScope;
|
|
19
|
+
readonly safe: boolean;
|
|
20
|
+
readonly verdict: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function assessEdit(before: string, after: string, extra?: readonly (readonly [ObligationKind, RegExp])[]): EditReport;
|
|
23
|
+
//# sourceMappingURL=obligations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"obligations.d.ts","sourceRoot":"","sources":["../../src/attention/obligations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEhF,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;AAE7F,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AA0BD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,SAAS,CAAC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EAAO,GACzD,UAAU,EAAE,CAWd;AAeD,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAkBD,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,SAAS,CAAC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EAAO,GACzD,UAAU,CA+CZ"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { gateScope, renderGateVerdict } from "../gate/index.js";
|
|
2
|
+
const PROVENANCE = /\b(?:measured|verified|confirmed|observed|probed?|checked|as of)\b|\b\d{4}-\d{2}-\d{2}\b/gi;
|
|
3
|
+
const COMMAND = /`([^`]*\b(?:npx|npm|node|git|python3?|bash|sh|curl|ps|free|grep|make|cargo|go|docker)\b[^`]*)`/g;
|
|
4
|
+
const POINTER = /\[\[([^\]]+)\]\]|\[[^\]]+\]\(([^)]+\.md)\)/g;
|
|
5
|
+
const PROHIBITION = /\b(?:NEVER|DO NOT|MUST NOT|REFUSE|FORBIDDEN|WITHDRAWN|SUPERSEDED|RESCINDED)\b/g;
|
|
6
|
+
const FIGURE = /(?<![\w.\-/])\d*\.\d+(?![\w]|\.\d)/g;
|
|
7
|
+
const KINDS = [
|
|
8
|
+
["provenance", PROVENANCE],
|
|
9
|
+
["command", COMMAND],
|
|
10
|
+
["pointer", POINTER],
|
|
11
|
+
["prohibition", PROHIBITION],
|
|
12
|
+
["figure", FIGURE],
|
|
13
|
+
];
|
|
14
|
+
const PROVENANCE_WINDOW = 80;
|
|
15
|
+
const CLAIMISH = /`[^`]+`/g;
|
|
16
|
+
function warrantsSomething(text, at, len) {
|
|
17
|
+
const from = Math.max(0, at - PROVENANCE_WINDOW);
|
|
18
|
+
const to = Math.min(text.length, at + len + PROVENANCE_WINDOW);
|
|
19
|
+
const probe = new RegExp(CLAIMISH.source, CLAIMISH.flags);
|
|
20
|
+
return probe.test(text.slice(from, to));
|
|
21
|
+
}
|
|
22
|
+
export function obligationsOf(text, extra = []) {
|
|
23
|
+
const out = [];
|
|
24
|
+
for (const [kind, rx] of [...KINDS, ...extra]) {
|
|
25
|
+
const probe = new RegExp(rx.source, rx.flags);
|
|
26
|
+
for (const m of text.matchAll(probe)) {
|
|
27
|
+
if (kind === "provenance" && !warrantsSomething(text, m.index ?? 0, m[0].length))
|
|
28
|
+
continue;
|
|
29
|
+
const raw = (m[1] ?? m[2] ?? m[0]).trim();
|
|
30
|
+
out.push({ kind, text: rx.flags.includes("i") ? raw.toLowerCase() : raw });
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return out;
|
|
34
|
+
}
|
|
35
|
+
const SHAPE_WINDOW = 18;
|
|
36
|
+
function shapesAround(text) {
|
|
37
|
+
const out = new Map();
|
|
38
|
+
const probe = new RegExp(FIGURE.source, FIGURE.flags);
|
|
39
|
+
for (const m of text.matchAll(probe)) {
|
|
40
|
+
const at = m.index ?? 0;
|
|
41
|
+
const shape = text.slice(Math.max(0, at - SHAPE_WINDOW), at + m[0].length + SHAPE_WINDOW);
|
|
42
|
+
out.set(m[0], [...(out.get(m[0]) ?? []), shape]);
|
|
43
|
+
}
|
|
44
|
+
return out;
|
|
45
|
+
}
|
|
46
|
+
function missing(before, after) {
|
|
47
|
+
const pool = new Map();
|
|
48
|
+
for (const o of after) {
|
|
49
|
+
const k = `${o.kind}\u0000${o.text}`;
|
|
50
|
+
pool.set(k, (pool.get(k) ?? 0) + 1);
|
|
51
|
+
}
|
|
52
|
+
const lost = [];
|
|
53
|
+
for (const o of before) {
|
|
54
|
+
const k = `${o.kind}\u0000${o.text}`;
|
|
55
|
+
const n = pool.get(k) ?? 0;
|
|
56
|
+
if (n > 0)
|
|
57
|
+
pool.set(k, n - 1);
|
|
58
|
+
else
|
|
59
|
+
lost.push(o);
|
|
60
|
+
}
|
|
61
|
+
return lost;
|
|
62
|
+
}
|
|
63
|
+
export function assessEdit(before, after, extra = []) {
|
|
64
|
+
const b = obligationsOf(before, extra);
|
|
65
|
+
const a = obligationsOf(after, extra);
|
|
66
|
+
const lost = missing(b, a);
|
|
67
|
+
const shapesB = shapesAround(before);
|
|
68
|
+
const shapesA = shapesAround(after);
|
|
69
|
+
const reflowed = [];
|
|
70
|
+
for (const [fig, sb] of shapesB) {
|
|
71
|
+
const sa = shapesA.get(fig);
|
|
72
|
+
if (sa === undefined)
|
|
73
|
+
continue;
|
|
74
|
+
const pool = new Map();
|
|
75
|
+
for (const shape of sa)
|
|
76
|
+
pool.set(shape, (pool.get(shape) ?? 0) + 1);
|
|
77
|
+
for (const shape of sb) {
|
|
78
|
+
const n = pool.get(shape) ?? 0;
|
|
79
|
+
if (n > 0) {
|
|
80
|
+
pool.set(shape, n - 1);
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
reflowed.push({ figure: fig, before: shape, after: [...pool.keys()][0] ?? sa[0] ?? "" });
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const scope = gateScope({
|
|
87
|
+
unit: "obligation",
|
|
88
|
+
examined: b.length,
|
|
89
|
+
discriminating: b.length,
|
|
90
|
+
discriminator: "were present before the edit, so could have been lost by it",
|
|
91
|
+
});
|
|
92
|
+
const safe = lost.length === 0 && reflowed.length === 0;
|
|
93
|
+
const head = renderGateVerdict(safe, scope, { pass: "EDIT SAFE", fail: "EDIT BROKE OBLIGATIONS" });
|
|
94
|
+
const detail = [
|
|
95
|
+
lost.length > 0 ? `${lost.length} LOST (${[...new Set(lost.map((o) => o.kind))].join(", ")})` : "",
|
|
96
|
+
reflowed.length > 0
|
|
97
|
+
? `${reflowed.length} REFLOWED — value kept, shape changed; an external anchor keyed on the old shape now reports ABSENT`
|
|
98
|
+
: "",
|
|
99
|
+
].filter((s) => s.length > 0);
|
|
100
|
+
return {
|
|
101
|
+
lost,
|
|
102
|
+
reflowed,
|
|
103
|
+
keptCount: b.length - lost.length,
|
|
104
|
+
beforeCount: b.length,
|
|
105
|
+
scope,
|
|
106
|
+
safe,
|
|
107
|
+
verdict: detail.length > 0 ? `${head} · ${detail.join(" · ")}` : head,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=obligations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"obligations.js","sourceRoot":"","sources":["../../src/attention/obligations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAkB,MAAM,kBAAkB,CAAC;AAShF,MAAM,UAAU,GAAG,4FAA4F,CAAC;AAChH,MAAM,OAAO,GAAG,iGAAiG,CAAC;AAClH,MAAM,OAAO,GAAG,6CAA6C,CAAC;AAC9D,MAAM,WAAW,GAAG,gFAAgF,CAAC;AACrG,MAAM,MAAM,GAAG,qCAAqC,CAAC;AAErD,MAAM,KAAK,GAAmD;IAC5D,CAAC,YAAY,EAAE,UAAU,CAAC;IAC1B,CAAC,SAAS,EAAE,OAAO,CAAC;IACpB,CAAC,SAAS,EAAE,OAAO,CAAC;IACpB,CAAC,aAAa,EAAE,WAAW,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC;AAE5B,SAAS,iBAAiB,CAAC,IAAY,EAAE,EAAU,EAAE,GAAW;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,iBAAiB,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,GAAG,GAAG,iBAAiB,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,QAAwD,EAAE;IAE1D,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC3F,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoB,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;QAC1F,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAkBD,SAAS,OAAO,CAAC,MAA6B,EAAE,KAA4B;IAC1E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,IAAI,GAAiB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;;YACzB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,MAAc,EACd,KAAa,EACb,QAAwD,EAAE;IAE1D,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3B,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,EAAE,KAAK,SAAS;YAAE,SAAS;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,KAAK,MAAM,KAAK,IAAI,EAAE,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvB,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,SAAS,CAAC;QACtB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,CAAC,CAAC,MAAM;QAClB,cAAc,EAAE,CAAC,CAAC,MAAM;QACxB,aAAa,EAAE,6DAA6D;KAC7E,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;IACnG,MAAM,MAAM,GAAG;QACb,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAClG,QAAQ,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,qGAAqG;YACzH,CAAC,CAAC,EAAE;KACP,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE9B,OAAO;QACL,IAAI;QACJ,QAAQ;QACR,SAAS,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;QACjC,WAAW,EAAE,CAAC,CAAC,MAAM;QACrB,KAAK;QACL,IAAI;QACJ,OAAO,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;KACtE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Obligation, Reflow } from "./obligations.js";
|
|
2
|
+
export type AttentionSeverity = "critical" | "high" | "medium" | "low";
|
|
3
|
+
export interface AttentionItem {
|
|
4
|
+
readonly subject: string;
|
|
5
|
+
readonly severity: AttentionSeverity;
|
|
6
|
+
readonly scope?: string;
|
|
7
|
+
readonly reason: string;
|
|
8
|
+
readonly action: string;
|
|
9
|
+
readonly rank: number;
|
|
10
|
+
}
|
|
11
|
+
export type CoordinationKind = "segregated-inbound" | "unverified-sharer" | "unread-inbound" | "erased-shared-cell" | "possibly-erased-shared-cell" | "stale-shared-cell";
|
|
12
|
+
export interface CoordinationFinding {
|
|
13
|
+
readonly kind: CoordinationKind;
|
|
14
|
+
readonly detail: string;
|
|
15
|
+
}
|
|
16
|
+
export interface AttentionInput {
|
|
17
|
+
readonly subject: string;
|
|
18
|
+
readonly scope?: string;
|
|
19
|
+
readonly drifted?: readonly {
|
|
20
|
+
readonly id: string;
|
|
21
|
+
readonly stated: string;
|
|
22
|
+
readonly actual?: string;
|
|
23
|
+
}[];
|
|
24
|
+
readonly lost?: readonly Obligation[];
|
|
25
|
+
readonly reflowed?: readonly Reflow[];
|
|
26
|
+
readonly coverage?: number;
|
|
27
|
+
readonly coordination?: readonly CoordinationFinding[];
|
|
28
|
+
}
|
|
29
|
+
export interface AttentionReport {
|
|
30
|
+
readonly items: readonly AttentionItem[];
|
|
31
|
+
readonly critical: number;
|
|
32
|
+
readonly high: number;
|
|
33
|
+
readonly clear: boolean;
|
|
34
|
+
readonly verdict: string;
|
|
35
|
+
}
|
|
36
|
+
export declare const THIN_COVERAGE = 0.5;
|
|
37
|
+
export declare function attentionQueue(inputs: readonly AttentionInput[]): AttentionReport;
|
|
38
|
+
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/attention/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,gBAAgB,GACxB,oBAAoB,GACpB,mBAAmB,GACnB,gBAAgB,GAChB,oBAAoB,GACpB,6BAA6B,GAC7B,mBAAmB,CAAC;AAExB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzG,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACxD;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,aAAa,MAAM,CAAC;AAsFjC,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,GAAG,eAAe,CAkBjF"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
export const THIN_COVERAGE = 0.5;
|
|
2
|
+
const SEVERITY = {
|
|
3
|
+
1: "critical",
|
|
4
|
+
2: "critical",
|
|
5
|
+
3: "high",
|
|
6
|
+
4: "high",
|
|
7
|
+
5: "high",
|
|
8
|
+
6: "medium",
|
|
9
|
+
7: "medium",
|
|
10
|
+
8: "low",
|
|
11
|
+
};
|
|
12
|
+
function itemsFor(input) {
|
|
13
|
+
const out = [];
|
|
14
|
+
const base = { subject: input.subject, ...(input.scope === undefined ? {} : { scope: input.scope }) };
|
|
15
|
+
for (const o of input.lost ?? []) {
|
|
16
|
+
if (o.kind === "prohibition") {
|
|
17
|
+
out.push({ ...base, rank: 1, severity: SEVERITY[1], reason: `a PROHIBITION was removed: ${JSON.stringify(o.text)}`,
|
|
18
|
+
action: "restore it verbatim, or record explicitly that the constraint was lifted and by whom" });
|
|
19
|
+
}
|
|
20
|
+
else if (o.kind === "command") {
|
|
21
|
+
out.push({ ...base, rank: 3, severity: SEVERITY[3], reason: `a COMMAND was removed: ${JSON.stringify(o.text)}`,
|
|
22
|
+
action: "restore it — a command that is lost gets re-derived wrong, unlike a lesson, which survives in its own file" });
|
|
23
|
+
}
|
|
24
|
+
else if (o.kind === "figure") {
|
|
25
|
+
out.push({ ...base, rank: 4, severity: SEVERITY[4], reason: `a FIGURE is gone or changed: ${o.text}`,
|
|
26
|
+
action: "confirm the number was meant to move; if it was, supersede it in the withdrawn register rather than overwriting it" });
|
|
27
|
+
}
|
|
28
|
+
else if (o.kind === "pointer") {
|
|
29
|
+
out.push({ ...base, rank: 6, severity: SEVERITY[6], reason: `a POINTER was removed: ${o.text}`,
|
|
30
|
+
action: "restore it or confirm the target is reachable from some other surface" });
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
out.push({ ...base, rank: 7, severity: SEVERITY[7], reason: `PROVENANCE was removed: ${JSON.stringify(o.text)}`,
|
|
34
|
+
action: "re-attach a marker (a verb or an ISO date) within the claim's window, or drop the claim" });
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
for (const d of input.drifted ?? []) {
|
|
38
|
+
out.push({ ...base, rank: 2, severity: SEVERITY[2],
|
|
39
|
+
reason: `LIVE STATE DRIFTED — ${d.id}: surface says ${JSON.stringify(d.stated)}${d.actual === undefined ? "" : `, actual ${JSON.stringify(d.actual)}`}`,
|
|
40
|
+
action: "re-derive and correct the surface BEFORE acting on it; a resume carrying one wrong live value spends the session on it" });
|
|
41
|
+
}
|
|
42
|
+
for (const r of input.reflowed ?? []) {
|
|
43
|
+
out.push({ ...base, rank: 5, severity: SEVERITY[5],
|
|
44
|
+
reason: `REFLOWED around ${r.figure} — the value survived, the shape did not`,
|
|
45
|
+
action: "run the checks that key on this line; an anchor matching the old shape now reports ABSENT rather than WRONG" });
|
|
46
|
+
}
|
|
47
|
+
for (const c of input.coordination ?? []) {
|
|
48
|
+
if (c.kind === "segregated-inbound") {
|
|
49
|
+
out.push({ ...base, rank: 2, severity: SEVERITY[2], reason: `SEGREGATED INBOUND — ${c.detail}`,
|
|
50
|
+
action: "re-file it UNREAD; reading is the irreversible step, and a boundary crossed cannot be uncrossed by noticing afterwards" });
|
|
51
|
+
}
|
|
52
|
+
else if (c.kind === "erased-shared-cell") {
|
|
53
|
+
out.push({ ...base, rank: 2, severity: SEVERITY[2], reason: `ERASED SHARED CELL — ${c.detail}`,
|
|
54
|
+
action: "delete cached copies before using any of it; review the notes that cite it — the erasure is the owner's decision, so notes are flagged, never deleted automatically" });
|
|
55
|
+
}
|
|
56
|
+
else if (c.kind === "possibly-erased-shared-cell") {
|
|
57
|
+
out.push({ ...base, rank: 7, severity: SEVERITY[7], reason: `POSSIBLY ERASED SHARED CELL — ${c.detail}`,
|
|
58
|
+
action: "treat cached copies as withdrawn until a read or the sharer confirms otherwise; a reconciliation cannot tell an erasure from a revocation" });
|
|
59
|
+
}
|
|
60
|
+
else if (c.kind === "stale-shared-cell") {
|
|
61
|
+
out.push({ ...base, rank: 8, severity: SEVERITY[8], reason: `STALE SHARED CELL — ${c.detail}`,
|
|
62
|
+
action: "do not fetch it — the grant cannot open the newest version; keep the held copy and wait for the grant to be wrapped again" });
|
|
63
|
+
}
|
|
64
|
+
else if (c.kind === "unverified-sharer") {
|
|
65
|
+
out.push({ ...base, rank: 7, severity: SEVERITY[7], reason: `UNVERIFIED SHARER — ${c.detail}`,
|
|
66
|
+
action: "check sha256 of the DECODED signing key against the agent id before reading or replying; the content may be fine, its warrant is absent" });
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
out.push({ ...base, rank: 8, severity: SEVERITY[8], reason: `UNREAD INBOUND — ${c.detail}`,
|
|
70
|
+
action: "enumerate them — the listing carries no labels, so an unread item's urgency is UNKNOWN, which is the argument for reading now rather than for deferring" });
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
const cov = input.coverage;
|
|
74
|
+
if (cov !== undefined) {
|
|
75
|
+
const usable = Number.isFinite(cov) && cov >= 0 && cov <= 1;
|
|
76
|
+
if (!usable) {
|
|
77
|
+
out.push({ ...base, rank: 8, severity: SEVERITY[8],
|
|
78
|
+
reason: `COVERAGE UNREPORTABLE — the surface supplied ${String(cov)}, which is not a fraction`,
|
|
79
|
+
action: "fix the producer: a coverage that cannot be read is not the same as a coverage that is low" });
|
|
80
|
+
}
|
|
81
|
+
else if (cov < THIN_COVERAGE) {
|
|
82
|
+
out.push({ ...base, rank: 8, severity: SEVERITY[8],
|
|
83
|
+
reason: `THIN COVERAGE — only ${(cov * 100).toFixed(0)}% of this surface's local claims are checkable`,
|
|
84
|
+
action: "give the load-bearing claims a probe, or mark them explicitly as unverified so they stop reading as verified" });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return out;
|
|
88
|
+
}
|
|
89
|
+
export function attentionQueue(inputs) {
|
|
90
|
+
const items = inputs.flatMap(itemsFor).sort((a, b) => a.rank - b.rank || a.subject.localeCompare(b.subject));
|
|
91
|
+
const critical = items.filter((i) => i.severity === "critical").length;
|
|
92
|
+
const high = items.filter((i) => i.severity === "high").length;
|
|
93
|
+
const examinable = inputs.some((i) => (i.lost?.length ?? 0) > 0 || (i.drifted?.length ?? 0) > 0 || (i.reflowed?.length ?? 0) > 0 || (i.coordination?.length ?? 0) > 0 || i.coverage !== undefined);
|
|
94
|
+
const clear = items.length === 0 && examinable;
|
|
95
|
+
const verdict = items.length > 0
|
|
96
|
+
? `${items.length} need attention — ${critical} critical, ${high} high; act on rank ${items[0].rank} first`
|
|
97
|
+
: examinable
|
|
98
|
+
? "CLEAR — every surface checked carried its obligations and its live claims held"
|
|
99
|
+
: "VACUOUS — nothing examinable was supplied, so an empty queue says nothing about the surfaces";
|
|
100
|
+
return { items, critical, high, clear, verdict };
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/attention/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type ClaimBasis = "measured" | "derived" | "assumed";
|
|
2
|
+
export interface ClaimEvidence {
|
|
3
|
+
readonly instrument: string;
|
|
4
|
+
readonly ranged: readonly string[] | number;
|
|
5
|
+
readonly cannotSee: string;
|
|
6
|
+
}
|
|
7
|
+
export interface Claim {
|
|
8
|
+
readonly text: string;
|
|
9
|
+
readonly basis: ClaimBasis;
|
|
10
|
+
readonly assertsOver?: readonly string[];
|
|
11
|
+
readonly evidence?: ClaimEvidence;
|
|
12
|
+
}
|
|
13
|
+
export interface ClaimVerdict {
|
|
14
|
+
readonly ok: boolean;
|
|
15
|
+
readonly problems: readonly string[];
|
|
16
|
+
readonly unmeasured: readonly string[];
|
|
17
|
+
}
|
|
18
|
+
export declare function checkClaim(c: Claim): ClaimVerdict;
|
|
19
|
+
export declare function renderClaim(c: Claim): string;
|
|
20
|
+
export declare function narrowToEvidence(c: Claim): Claim;
|
|
21
|
+
export { findRequotations, validateRegister } from "./withdrawn.js";
|
|
22
|
+
export type { WithdrawnClaim, Requotation } from "./withdrawn.js";
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/claim/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,YAAY,CA+BjD;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAQ5C;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAMhD;AAED,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export function checkClaim(c) {
|
|
2
|
+
const problems = [];
|
|
3
|
+
const unmeasured = [];
|
|
4
|
+
if (c.text.trim() === "")
|
|
5
|
+
problems.push("a claim with no text asserts nothing");
|
|
6
|
+
if (c.basis === "measured" && c.evidence === undefined) {
|
|
7
|
+
problems.push("basis is `measured` but no instrument is named — that is an inference, not a measurement");
|
|
8
|
+
}
|
|
9
|
+
if (c.evidence !== undefined) {
|
|
10
|
+
if (c.evidence.instrument.trim() === "")
|
|
11
|
+
problems.push("evidence names no instrument");
|
|
12
|
+
if (c.evidence.cannotSee.trim() === "") {
|
|
13
|
+
problems.push("evidence states no blind spot — a scope whose limits cannot be written down has not been identified");
|
|
14
|
+
}
|
|
15
|
+
const r = c.evidence.ranged;
|
|
16
|
+
if (typeof r === "number") {
|
|
17
|
+
if (!Number.isInteger(r) || r < 0)
|
|
18
|
+
problems.push(`ranged must be a non-negative integer count, got ${String(r)}`);
|
|
19
|
+
if (r === 0)
|
|
20
|
+
problems.push("the instrument ranged over nothing — a claim from an empty population is vacuous");
|
|
21
|
+
if (c.assertsOver !== undefined && c.assertsOver.length > 0) {
|
|
22
|
+
problems.push("claim quantifies over named units but its evidence is only a count — containment cannot be checked");
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
if (r.length === 0)
|
|
27
|
+
problems.push("the instrument ranged over nothing — a claim from an empty population is vacuous");
|
|
28
|
+
const covered = new Set(r);
|
|
29
|
+
for (const u of c.assertsOver ?? [])
|
|
30
|
+
if (!covered.has(u))
|
|
31
|
+
unmeasured.push(u);
|
|
32
|
+
if (unmeasured.length > 0) {
|
|
33
|
+
problems.push(`claim asserts over ${unmeasured.length} unit(s) the instrument never saw: ${unmeasured.join(", ")}`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return { ok: problems.length === 0, problems, unmeasured };
|
|
38
|
+
}
|
|
39
|
+
export function renderClaim(c) {
|
|
40
|
+
const v = checkClaim(c);
|
|
41
|
+
if (!v.ok)
|
|
42
|
+
return `MAY NOT BE PUBLISHED AS WRITTEN — ${v.problems.join("; ")}`;
|
|
43
|
+
const scope = c.evidence === undefined
|
|
44
|
+
? c.basis
|
|
45
|
+
: `${c.basis}; ${c.evidence.instrument}; ranged over ${typeof c.evidence.ranged === "number" ? c.evidence.ranged : c.evidence.ranged.length}; cannot see: ${c.evidence.cannotSee}`;
|
|
46
|
+
return `${c.text} [${scope}]`;
|
|
47
|
+
}
|
|
48
|
+
export function narrowToEvidence(c) {
|
|
49
|
+
const r = c.evidence?.ranged;
|
|
50
|
+
if (c.assertsOver === undefined || typeof r === "number" || r === undefined)
|
|
51
|
+
return c;
|
|
52
|
+
const covered = new Set(r);
|
|
53
|
+
const kept = c.assertsOver.filter((u) => covered.has(u));
|
|
54
|
+
return kept.length === c.assertsOver.length ? c : { ...c, assertsOver: kept };
|
|
55
|
+
}
|
|
56
|
+
export { findRequotations, validateRegister } from "./withdrawn.js";
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/claim/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface WithdrawnClaim {
|
|
2
|
+
readonly value: string;
|
|
3
|
+
readonly mustAccompany: readonly string[];
|
|
4
|
+
readonly permittedWith?: readonly string[];
|
|
5
|
+
readonly reason: string;
|
|
6
|
+
readonly withdrawnOn: string;
|
|
7
|
+
readonly replacement?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface Requotation {
|
|
10
|
+
readonly file: string;
|
|
11
|
+
readonly line: number;
|
|
12
|
+
readonly text: string;
|
|
13
|
+
readonly claim: WithdrawnClaim;
|
|
14
|
+
}
|
|
15
|
+
export declare function findRequotations(file: string, text: string, register: readonly WithdrawnClaim[]): Requotation[];
|
|
16
|
+
export declare function validateRegister(register: readonly WithdrawnClaim[]): void;
|
|
17
|
+
//# sourceMappingURL=withdrawn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withdrawn.d.ts","sourceRoot":"","sources":["../../src/claim/withdrawn.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAChC;AAOD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,SAAS,cAAc,EAAE,GAClC,WAAW,EAAE,CAmBf;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI,CAW1E"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
const WITHDRAWAL_CONTEXT = /~~|withdraw|WITHDRAWN|retract|superseded|no longer|corrected|CORRECTION|\bwas wrong\b|\bREFUTED\b|\bFALSE\b|stays withdrawn|never re-quote|previously (read|said|reported)|used to (read|be|say)/i;
|
|
2
|
+
const escape = (s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
3
|
+
export function findRequotations(file, text, register) {
|
|
4
|
+
const out = [];
|
|
5
|
+
const lines = text.split("\n");
|
|
6
|
+
for (let i = 0; i < lines.length; i++) {
|
|
7
|
+
const line = lines[i];
|
|
8
|
+
if (WITHDRAWAL_CONTEXT.test(line))
|
|
9
|
+
continue;
|
|
10
|
+
for (const claim of register) {
|
|
11
|
+
const isNumeric = /^[\d.]+$/.test(claim.value);
|
|
12
|
+
const hit = isNumeric
|
|
13
|
+
? new RegExp(`(?<![\\d.])${escape(claim.value)}(?![\\d])`).test(line)
|
|
14
|
+
: line.toLowerCase().includes(claim.value.toLowerCase());
|
|
15
|
+
if (!hit)
|
|
16
|
+
continue;
|
|
17
|
+
const lower = line.toLowerCase();
|
|
18
|
+
if (!claim.mustAccompany.some((t) => lower.includes(t.toLowerCase())))
|
|
19
|
+
continue;
|
|
20
|
+
if (claim.permittedWith?.some((t) => lower.includes(t.toLowerCase())))
|
|
21
|
+
continue;
|
|
22
|
+
out.push({ file, line: i + 1, text: line.trim(), claim });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return out;
|
|
26
|
+
}
|
|
27
|
+
export function validateRegister(register) {
|
|
28
|
+
for (const c of register) {
|
|
29
|
+
if (c.value.trim() === "")
|
|
30
|
+
throw new Error("a withdrawn claim needs the value it published");
|
|
31
|
+
if (c.mustAccompany.length === 0) {
|
|
32
|
+
throw new Error(`withdrawn claim ${c.value} names no companion token — a bare number is not identifiable`);
|
|
33
|
+
}
|
|
34
|
+
if (c.reason.trim() === "")
|
|
35
|
+
throw new Error(`withdrawn claim ${c.value} states no reason`);
|
|
36
|
+
if (!/^\d{4}-\d{2}-\d{2}$/.test(c.withdrawnOn)) {
|
|
37
|
+
throw new Error(`withdrawn claim ${c.value} needs an ISO withdrawal date, got ${c.withdrawnOn}`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=withdrawn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withdrawn.js","sourceRoot":"","sources":["../../src/claim/withdrawn.ts"],"names":[],"mappings":"AAgBA,MAAM,kBAAkB,GACtB,mMAAmM,CAAC;AAEtM,MAAM,MAAM,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAE/E,MAAM,UAAU,gBAAgB,CAC9B,IAAY,EACZ,IAAY,EACZ,QAAmC;IAEnC,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QAC5C,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,GAAG,GAAG,SAAS;gBACnB,CAAC,CAAC,IAAI,MAAM,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBAAE,SAAS;YAChF,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBAAE,SAAS;YAChF,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAmC;IAClE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC7F,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,+DAA+D,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,mBAAmB,CAAC,CAAC;QAC3F,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,sCAAsC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { AuditTrail, DEFAULT_MAX_EVENTS, type AuditEvent, type AuditKind, type AuditTrailOptions } from "./trail.js";
|
|
2
|
+
export { assembleComplianceReport, renderComplianceReport, type ComplianceOptions, type ComplianceReport, type ComplianceSection, type SectionStatus, } from "./report.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compliance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACrH,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compliance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAA2D,MAAM,YAAY,CAAC;AACrH,OAAO,EACL,wBAAwB,EACxB,sBAAsB,GAKvB,MAAM,aAAa,CAAC"}
|