thinqos 3.3.2__tar.gz → 3.3.3__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.
- {thinqos-3.3.2 → thinqos-3.3.3}/CHANGELOG.md +7 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/PKG-INFO +1 -1
- {thinqos-3.3.2 → thinqos-3.3.3}/pyproject.toml +1 -1
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/cli.py +2 -2
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_install.py +1 -1
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5100_key_prompt_links.py +1 -1
- {thinqos-3.3.2 → thinqos-3.3.3}/.gitignore +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/README.md +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/scripts/sync_cognitive_contract.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/__init__.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/__main__.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/accountscope.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/__init__.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/claude_code.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/cline.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/cline_tasks.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/codex.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/grok_build.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/vscode_chat_store.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/adapters/vscode_copilot.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/attribution.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/capture_history_policy.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/client.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/cline_sweep.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/connections.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/denylist.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/discovery.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/filelock.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/hook.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/importer.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/incremental.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/install_marker.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/installs.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/logsetup.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/mcp_transport.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/primecache.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/process.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/questionrecall.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/recovery.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/scheduler.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/secretstore.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/selfupdate.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/server_revision.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/shim.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/state.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/taskstate.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/tls.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/tool_turns.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/vscode_chat_sweep.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/src/thinqos_capture/writeredirect.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/conftest.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/fixtures/claude_code_session.jsonl +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/fixtures/codex_session.jsonl +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/fixtures/grok_build_summary.json +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/fixtures/grok_build_updates.jsonl +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/fixtures/tos_6776_recovery_failures.json +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_attribution.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_capture_completeness.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_capture_incremental.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_claude_code_adapter.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cli_drain.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cli_install_hook.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cli_list_forget.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cli_run.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_client_limits.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_client_version_header.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cline_adapter.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cline_mcp_registration.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cline_sweep.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_cline_tasks.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_adapter.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_capture_staleness.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_hook_runtime_contract.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_hook_trust.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_plugin_setup.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_codex_rollout_memory.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_doctor.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_doctor_queue.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_drain_partition_split.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_drain_poison.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_drain_timeout.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_env_key_remnant.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_grok_build_adapter.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_autodrain.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_prime.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_secret_resolution.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_self_update.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_stdin.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_hook_task_state.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_importer.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_incremental.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_installer_hardening.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_liveness.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_logsetup.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_mcp_transport.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_no_retired_tool_names.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_plugin_autoupdate.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_plugin_mode.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_prime_cache.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_process.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_queue_policy.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_scheduler.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_secretstore.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_selfupdate.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_shim.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_state.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_state_migration.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_taskstate.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tls_cloud_proxy.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_token_economy.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tool_turns.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_2840_completion.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_2840_repair_round1.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_2840_repair_round2.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4483_account_scope.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4485_capture_history_policy.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4485_doctor_update_state.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4485_prime_refresh_coalescing.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4486_question_recall.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4486_refresh_retry.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_4487_install_marker.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5043_connections.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5043_discovery.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5043_install_precedence.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5102_selfheal.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5226_installs_registry.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_5369_mcp_revision.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_6776_recovery.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_6807_plugin_install.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_7410_prime_refusals.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_tos_7686_self_repair.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_verify.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_vscode_chat_store.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_vscode_copilot_adapter.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/tests/test_writeredirect.py +0 -0
- {thinqos-3.3.2 → thinqos-3.3.3}/uv.lock +0 -0
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.3.3](https://github.com/AI4Outcomes/thinqos/compare/tools/thinqos-v3.3.2...tools/thinqos-v3.3.3) (2026-10-09)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* release batch af78bc6f (TOS-7763, TOS-7758, TOS-7768) ([#8361](https://github.com/AI4Outcomes/thinqos/issues/8361)) ([2d27f78](https://github.com/AI4Outcomes/thinqos/commit/2d27f78d697c61c8bda2c8beedb244034b451df4))
|
|
9
|
+
|
|
3
10
|
## [3.3.2](https://github.com/AI4Outcomes/thinqos/compare/tools/thinqos-v3.3.1...tools/thinqos-v3.3.2) (2026-10-09)
|
|
4
11
|
|
|
5
12
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: thinqos
|
|
3
|
-
Version: 3.3.
|
|
3
|
+
Version: 3.3.3
|
|
4
4
|
Summary: Connect Claude Code, Codex, Grok Build, VS Code, and Cline to your thinqOS Mind.
|
|
5
5
|
Project-URL: Homepage, https://thinqos.com
|
|
6
6
|
Project-URL: Documentation, https://thinqos.com/mcp-memory-server
|
|
@@ -1806,7 +1806,7 @@ def doctor_cmd(
|
|
|
1806
1806
|
)
|
|
1807
1807
|
click.echo(
|
|
1808
1808
|
f" Otherwise, get a fresh key from {base_url}"
|
|
1809
|
-
"/
|
|
1809
|
+
"/api-keys and run "
|
|
1810
1810
|
f"`{CLI_NAME} install --repair`."
|
|
1811
1811
|
)
|
|
1812
1812
|
check_statuses["server"] = "fail"
|
|
@@ -7089,7 +7089,7 @@ def _prompt_for_pasted_token(base_url: str) -> str:
|
|
|
7089
7089
|
"""
|
|
7090
7090
|
click.echo("")
|
|
7091
7091
|
click.echo("No thinqOS API key found on this machine yet.")
|
|
7092
|
-
click.echo(f" 1. Open {base_url}/
|
|
7092
|
+
click.echo(f" 1. Open {base_url}/api-keys (sign in if asked).")
|
|
7093
7093
|
click.echo(" 2. Click Create Key and copy the key it shows you.")
|
|
7094
7094
|
if base_url == DEFAULT_BASE_URL:
|
|
7095
7095
|
click.echo(
|
|
@@ -2458,7 +2458,7 @@ def test_install_with_no_token_sources_prompts_and_accepts_pasted_pat(
|
|
|
2458
2458
|
)
|
|
2459
2459
|
|
|
2460
2460
|
assert result.exit_code == 0, result.output
|
|
2461
|
-
assert "Open https://app.thinqos.com/
|
|
2461
|
+
assert "Open https://app.thinqos.com/api-keys" in result.output
|
|
2462
2462
|
assert "Paste your thinqOS API key" in result.output
|
|
2463
2463
|
assert read_ingest_key(tmp_path / "state") == "tq_pasted_abc123"
|
|
2464
2464
|
|
|
@@ -17,7 +17,7 @@ def test_prompt_links_directly_to_key_page(
|
|
|
17
17
|
monkeypatch.setattr(cli.click, "prompt", lambda *a, **k: "")
|
|
18
18
|
cli._prompt_for_pasted_token("https://thinqos.heartwoodguild.com")
|
|
19
19
|
out = capsys.readouterr().out
|
|
20
|
-
assert "https://thinqos.heartwoodguild.com/
|
|
20
|
+
assert "https://thinqos.heartwoodguild.com/api-keys" in out
|
|
21
21
|
assert "Create Key" in out
|
|
22
22
|
assert "/connect " not in out
|
|
23
23
|
assert "Settings -> API Keys" not in out
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|