seif-cli 0.5.1__tar.gz → 0.5.2__tar.gz

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.
Files changed (114) hide show
  1. {seif_cli-0.5.1/src/seif_cli.egg-info → seif_cli-0.5.2}/PKG-INFO +1 -1
  2. {seif_cli-0.5.1 → seif_cli-0.5.2}/pyproject.toml +1 -1
  3. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/analysis/stance_detector.py +8 -1
  4. {seif_cli-0.5.1 → seif_cli-0.5.2/src/seif_cli.egg-info}/PKG-INFO +1 -1
  5. {seif_cli-0.5.1 → seif_cli-0.5.2}/LICENSE +0 -0
  6. {seif_cli-0.5.1 → seif_cli-0.5.2}/MANIFEST.in +0 -0
  7. {seif_cli-0.5.1 → seif_cli-0.5.2}/README.md +0 -0
  8. {seif_cli-0.5.1 → seif_cli-0.5.2}/setup.cfg +0 -0
  9. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/__init__.py +0 -0
  10. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/__main__.py +0 -0
  11. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/analysis/__init__.py +0 -0
  12. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/analysis/physical_constants.py +0 -0
  13. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/analysis/quality_gate.py +0 -0
  14. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/analysis/transcompiler.py +0 -0
  15. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/bridge/__init__.py +0 -0
  16. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/bridge/native_client.py +0 -0
  17. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/bridge/telegram_bot.py +0 -0
  18. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/__init__.py +0 -0
  19. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/__main__.py +0 -0
  20. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/chat.py +0 -0
  21. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/cli.py +0 -0
  22. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/identity.py +0 -0
  23. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/main.py +0 -0
  24. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/resonance_display.py +0 -0
  25. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/serve.py +0 -0
  26. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/serve_v2.py +0 -0
  27. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/setup.py +0 -0
  28. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/cli/wrapper.py +0 -0
  29. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/constants.py +0 -0
  30. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/__init__.py +0 -0
  31. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/advisor.py +0 -0
  32. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/code_compressor.py +0 -0
  33. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/context_bridge.py +0 -0
  34. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/context_importer.py +0 -0
  35. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/context_manager.py +0 -0
  36. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/context_qr.py +0 -0
  37. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/cycle.py +0 -0
  38. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/file_extractor.py +0 -0
  39. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/git_context.py +0 -0
  40. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/git_hooks.py +0 -0
  41. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/host_init.py +0 -0
  42. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/ingest.py +0 -0
  43. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/model_probe.py +0 -0
  44. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/nucleus.py +0 -0
  45. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/ref.py +0 -0
  46. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/registry.py +0 -0
  47. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/seif_io.py +0 -0
  48. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/sessions.py +0 -0
  49. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/context/workspace.py +0 -0
  50. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/__init__.py +0 -0
  51. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/fingerprint.py +0 -0
  52. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/resonance_encoding.py +0 -0
  53. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/resonance_gate.py +0 -0
  54. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/resonance_signal.py +0 -0
  55. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/signing.py +0 -0
  56. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/timestamping.py +0 -0
  57. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/transfer_function.py +0 -0
  58. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/core/triple_gate.py +0 -0
  59. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/RESONANCE.json +0 -0
  60. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/__init__.py +0 -0
  61. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/__init__.py +0 -0
  62. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/circuit-recovery-v1.seif +0 -0
  63. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/definitions-v1.seif +0 -0
  64. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/ise-dissonance-v1.seif +0 -0
  65. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/multi-agent-sync-v1.seif +0 -0
  66. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/onboarding.seif +0 -0
  67. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/partial-attention-axiom-v1.seif +0 -0
  68. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/seif-cycle-v1.seif +0 -0
  69. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/seif-os-architecture-v1.seif +0 -0
  70. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/defaults/triad-convergence-v1.seif +0 -0
  71. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/data/paths.py +0 -0
  72. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/__init__.py +0 -0
  73. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/hooks/hooks.json +0 -0
  74. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/circuit-check.sh +0 -0
  75. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/circuit-monitor.py +0 -0
  76. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/classification-gate.sh +0 -0
  77. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/kernel-seed.py +0 -0
  78. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/orchestra-probe.py +0 -0
  79. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/quality-gate.sh +0 -0
  80. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/session-end.sh +0 -0
  81. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/scripts/session-start.sh +0 -0
  82. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/skills/gate/SKILL.md +0 -0
  83. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/skills/status/SKILL.md +0 -0
  84. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/plugins/claude-code/skills/sync/SKILL.md +0 -0
  85. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/security/__init__.py +0 -0
  86. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif/security/mode.py +0 -0
  87. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif_cli.egg-info/SOURCES.txt +0 -0
  88. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif_cli.egg-info/dependency_links.txt +0 -0
  89. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif_cli.egg-info/entry_points.txt +0 -0
  90. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif_cli.egg-info/requires.txt +0 -0
  91. {seif_cli-0.5.1 → seif_cli-0.5.2}/src/seif_cli.egg-info/top_level.txt +0 -0
  92. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_advisor.py +0 -0
  93. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_audit_host.py +0 -0
  94. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_canonical_inputs.py +0 -0
  95. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_code_compressor.py +0 -0
  96. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_collaborative_seif.py +0 -0
  97. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_context_qr.py +0 -0
  98. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_context_repo.py +0 -0
  99. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_git_context.py +0 -0
  100. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_git_hooks.py +0 -0
  101. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_host_init.py +0 -0
  102. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_init.py +0 -0
  103. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_model_probe.py +0 -0
  104. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_quality_gate.py +0 -0
  105. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_rebuild_registry.py +0 -0
  106. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_ref.py +0 -0
  107. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_registry.py +0 -0
  108. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_resonance_gate.py +0 -0
  109. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_seif_io.py +0 -0
  110. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_stance_detector.py +0 -0
  111. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_transcompiler.py +0 -0
  112. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_transfer_function.py +0 -0
  113. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_triple_gate.py +0 -0
  114. {seif_cli-0.5.1 → seif_cli-0.5.2}/tests/test_workspace.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: seif-cli
3
- Version: 0.5.1
3
+ Version: 0.5.2
4
4
  Summary: Measure AI output quality, protect sensitive data, watch your AI environment resonate. Quality Gate, Classification, Sentinel & Auto-Healing, SEIF OS.
5
5
  Author: André Cunha Antero de Carvalho
6
6
  License: CC-BY-NC-SA-4.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "seif-cli"
7
- version = "0.5.1"
7
+ version = "0.5.2"
8
8
  description = "Measure AI output quality, protect sensitive data, watch your AI environment resonate. Quality Gate, Classification, Sentinel & Auto-Healing, SEIF OS."
9
9
  readme = "README.md"
10
10
  license = {text = "CC-BY-NC-SA-4.0"}
@@ -137,7 +137,14 @@ def analyze(text: str) -> StanceAnalysis:
137
137
  This does NOT judge the truth of claims. It measures the RATIO of
138
138
  verifiable to interpretive content, enabling informed reading.
139
139
  """
140
- sentences = [s.strip() for s in re.split(r'(?<![0-9])[.!?]|\n', text) if len(s.strip()) > 10]
140
+ # Sentence boundary rules:
141
+ # - Split on `.!?` only when NOT inside a decimal (no digit immediately
142
+ # after the punctuation), OR when followed by whitespace + a capital
143
+ # letter (the "0.612. This" case — punctuation preceded by a digit
144
+ # but clearly closing a sentence).
145
+ # - Newlines always split.
146
+ splitter = re.compile(r'[.!?](?!\d)(?=\s+[A-Z]|\s*$|\s+\Z)|(?<![0-9])[.!?]|\n')
147
+ sentences = [s.strip() for s in splitter.split(text) if len(s.strip()) > 10]
141
148
 
142
149
  if len(sentences) < 2:
143
150
  return StanceAnalysis(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: seif-cli
3
- Version: 0.5.1
3
+ Version: 0.5.2
4
4
  Summary: Measure AI output quality, protect sensitive data, watch your AI environment resonate. Quality Gate, Classification, Sentinel & Auto-Healing, SEIF OS.
5
5
  Author: André Cunha Antero de Carvalho
6
6
  License: CC-BY-NC-SA-4.0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes