Generated: Fri Nov 14 21:16:51 PST 2025 Repository: git@github.com:joinnova-ci/autoflow-platform.git Branch: feat/agent-rewrite Author: Sebastian Heyneman sebastian@joinnova.com
| Metric | Value |
|---|---|
| Total Commits | 234 |
| Files changed | 3498 |
| Lines added | 1059110 |
| Lines deleted | 870907 |
| Net lines | 188203 |
GitHub Profile: https://github.com/seabass011
To verify this report:
- Clone the repository:
git clone git@github.com:joinnova-ci/autoflow-platform.git - Checkout the branch:
git checkout feat/agent-rewrite - Run:
git log --since="7 days ago" --author="Sebastian Heyneman" --stat - Compare commit hashes, timestamps, and stats below
Full Hash: 9ceb4c41521ff43c6769eba2d98752f982f80675
Short Hash: 9ceb4c4
Timestamp: 2025-11-14 21:13:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 05:13:19 UTC
Summary: 19 files changed, 3111 insertions(+), 313 deletions(-), net: 2798 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
agent-migration-flow.md |
71 | 195 | -124 |
canonical-agent-spec.md |
71 | 0 | 71 |
logs/platform/backend/dev.log |
1950 | 78 | 1872 |
migration-master-spec.md |
68 | 0 | 68 |
platform/backend/api/inbox.py |
72 | 0 | 72 |
platform/backend/app/config/__init__.py |
5 | 0 | 5 |
platform/backend/app/services/pinecone_client.py |
29 | 7 | 22 |
platform/backend/app/services/semantic_search.py |
7 | 0 | 7 |
platform/backend/app/services/smart_search_service.py |
454 | 0 | 454 |
platform/backend/app/state_machine/__init__.py |
2 | 0 | 2 |
platform/backend/app/tools/loaders/prompt_helpers.py |
14 | 4 | 10 |
platform/backend/scripts/generate_action_box_templates.py |
3 | 2 | 1 |
platform/backend/scripts/validate_yaml.py |
26 | 13 | 13 |
platform/backend/tests/prompts/__init__.py |
2 | 0 | 2 |
platform/backend/tests/prompts/test_prompt_contracts.py |
140 | 0 | 140 |
platform/backend/tests/state_machine/__init__.py |
2 | 0 | 2 |
platform/backend/tests/state_machine/test_state_config.py |
144 | 0 | 144 |
platform/frontend/app/dashboard/inbox/search/page.tsx |
50 | 13 | 37 |
platform/frontend/components/inbox/SearchInput.tsx |
1 | 1 | 0 |
Verify this commit:
git show --stat 9ceb4c41521ff43c6769eba2d98752f982f80675Full Hash: 9f84bb11ed2d8515acaa4a78da1efa5dd73ba207
Short Hash: 9f84bb1
Timestamp: 2025-11-14 20:47:44 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:47:44 UTC
Summary: 3 files changed, 290 insertions(+), 1 deletions(-), net: 289 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/closed_loop_controller.py |
9 | 1 | 8 |
platform/backend/app/tools/loaders/prompt_helpers.py |
19 | 0 | 19 |
platform/backend/scripts/generate_action_box_templates.py |
262 | 0 | 262 |
Verify this commit:
git show --stat 9f84bb11ed2d8515acaa4a78da1efa5dd73ba207Full Hash: ea2e7cda5bac7a710762c9d4e57c8ca7feb306d3
Short Hash: ea2e7cd
Timestamp: 2025-11-14 20:47:22 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:47:22 UTC
Summary: 1 files changed, 9 insertions(+), 1 deletions(-), net: 8 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/closed_loop_controller.py |
9 | 1 | 8 |
Verify this commit:
git show --stat ea2e7cda5bac7a710762c9d4e57c8ca7feb306d3Full Hash: 7630287055ee26d08888e36177373952b5ea98e1
Short Hash: 7630287
Timestamp: 2025-11-14 20:47:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:47:21 UTC
Summary: 1 files changed, 9 insertions(+), 1 deletions(-), net: 8 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/closed_loop_controller.py |
9 | 1 | 8 |
Verify this commit:
git show --stat 7630287055ee26d08888e36177373952b5ea98e1Full Hash: 2302bc912db42457ab81d28c4d840254f46f2720
Short Hash: 2302bc9
Timestamp: 2025-11-14 20:47:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:47:19 UTC
Summary: 3 files changed, 86 insertions(+), 3 deletions(-), net: 83 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
19 | 0 | 19 |
platform/backend/app/agent_engine/closed_loop_controller.py |
8 | 3 | 5 |
prompts-spec |
59 | 0 | 59 |
Verify this commit:
git show --stat 2302bc912db42457ab81d28c4d840254f46f2720Full Hash: b71695e1d08ffccd7cae804ba3087406d6290cee
Short Hash: b71695e
Timestamp: 2025-11-14 20:47:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:47:12 UTC
Summary: 9 files changed, 1111 insertions(+), 61 deletions(-), net: 1050 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
603 | 45 | 558 |
platform/backend/api/inbox.py |
5 | 5 | 0 |
platform/backend/app/agent_engine/closed_loop_controller.py |
25 | 4 | 21 |
platform/backend/app/prompts/models.py |
125 | 0 | 125 |
platform/backend/app/state_machine/config.yaml |
20 | 0 | 20 |
platform/backend/app/state_machine/models.py |
159 | 0 | 159 |
platform/backend/app/tools/loaders/yaml_loader.py |
101 | 7 | 94 |
platform/backend/tests/regression/test_yaml_validation.py |
30 | 0 | 30 |
prompts-spec |
43 | 0 | 43 |
Verify this commit:
git show --stat b71695e1d08ffccd7cae804ba3087406d6290ceeFull Hash: e3fc3bf85cc5100abcef9a82cb731e192797fe69
Short Hash: e3fc3bf
Timestamp: 2025-11-14 20:41:26 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:41:26 UTC
Summary: 2 files changed, 3 insertions(+), 619 deletions(-), net: -616 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2 | 618 | -616 |
platform/backend/api/inbox.py |
1 | 1 | 0 |
Verify this commit:
git show --stat e3fc3bf85cc5100abcef9a82cb731e192797fe69Full Hash: 62f7b52784c0839dfb6bf143bc9fe7e5cb3c74eb
Short Hash: 62f7b52
Timestamp: 2025-11-14 20:40:07 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:40:07 UTC
Summary: 13 files changed, 1209 insertions(+), 84 deletions(-), net: 1125 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.github/workflows/ci.yml |
38 | 0 | 38 |
.pre-commit-config.yaml |
7 | 0 | 7 |
docs/rollout/closed-loop-shadow.md |
61 | 16 | 45 |
logs/platform/backend/dev.log |
620 | 4 | 616 |
platform/backend/api/inbox.py |
42 | 5 | 37 |
platform/backend/app/agent_engine/closed_loop_adapter.py |
4 | 8 | -4 |
platform/backend/app/agent_engine/closed_loop_controller.py |
144 | 3 | 141 |
platform/backend/app/tools/yaml/gmail.yaml |
6 | 0 | 6 |
platform/backend/app/tools/yaml/prompts/inbox.yaml |
65 | 8 | 57 |
platform/backend/scripts/tool_health_report.py |
45 | 40 | 5 |
platform/backend/scripts/validate_yaml.py |
9 | 0 | 9 |
platform/backend/tests/test_closed_loop_controller.py |
105 | 0 | 105 |
whatever-spec.md |
63 | 0 | 63 |
Verify this commit:
git show --stat 62f7b52784c0839dfb6bf143bc9fe7e5cb3c74ebFull Hash: 5f463ad5d3fff8e4b90f57543f33e8bd515aad31
Short Hash: 5f463ad
Timestamp: 2025-11-14 20:25:42 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:25:42 UTC
Summary: 2 files changed, 46 insertions(+), 5996 deletions(-), net: -5950 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
45 | 5995 | -5950 |
platform/backend/api/inbox.py |
1 | 1 | 0 |
Verify this commit:
git show --stat 5f463ad5d3fff8e4b90f57543f33e8bd515aad31Full Hash: 2cfb56a625324aa089f7ead8fce9a3edf9f30068
Short Hash: 2cfb56a
Timestamp: 2025-11-14 20:23:30 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 04:23:30 UTC
Summary: 4 files changed, 235 insertions(+), 234 deletions(-), net: 1 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.pre-commit-config.yaml |
8 | 0 | 8 |
agent-migration-flow.md |
22 | 39 | -17 |
platform/backend/api/inbox.py |
203 | 195 | 8 |
platform/backend/app/tools/yaml/gmail.yaml |
2 | 0 | 2 |
Verify this commit:
git show --stat 2cfb56a625324aa089f7ead8fce9a3edf9f30068Full Hash: ed5e122964f2460a236c61725915a681bb47b6b8
Short Hash: ed5e122
Timestamp: 2025-11-14 19:18:26 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 03:18:25 UTC
Summary: 3 files changed, 2382 insertions(+), 2305 deletions(-), net: 77 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2300 | 2305 | -5 |
platform/backend/app/agent_engine/anthropic_client.py |
13 | 0 | 13 |
platform/backend/tests/test_anthropic_client.py |
69 | 0 | 69 |
Verify this commit:
git show --stat ed5e122964f2460a236c61725915a681bb47b6b8Full Hash: 7fdcac25e5c9a43613e93a0ce37226dbb8f75a7d
Short Hash: 7fdcac2
Timestamp: 2025-11-14 19:15:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 03:15:20 UTC
Summary: 9 files changed, 7982 insertions(+), 5194 deletions(-), net: 2788 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
294 | 1859 | -1565 |
dev.logs |
2250 | 2588 | -338 |
logs/platform/backend/dev.log |
5235 | 682 | 4553 |
platform/backend/app/agent_engine/anthropic_client.py |
38 | 1 | 37 |
platform/backend/app/agent_engine/closed_loop_adapter.py |
52 | 52 | 0 |
platform/backend/app/agent_engine/closed_loop_controller.py |
2 | 4 | -2 |
platform/backend/app/agent_engine/langfuse_integration.py |
21 | 8 | 13 |
platform/backend/tests/regression/test_langfuse_span_fix.py |
31 | 0 | 31 |
platform/backend/tests/test_anthropic_client.py |
59 | 0 | 59 |
Verify this commit:
git show --stat 7fdcac25e5c9a43613e93a0ce37226dbb8f75a7dFull Hash: e8564a6482eeca81c80aff52ec6c03b47fde5947
Short Hash: e8564a6
Timestamp: 2025-11-14 19:07:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 03:07:19 UTC
Summary: 10 files changed, 2157 insertions(+), 39 deletions(-), net: 2118 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.github/workflows/ci.yml |
8 | 0 | 8 |
logs/platform/backend/dev.log |
1429 | 2 | 1427 |
platform/backend/api/inbox.py |
79 | 14 | 65 |
platform/backend/app/agent_engine/langfuse_integration.py |
14 | 8 | 6 |
platform/backend/app/tools/action_box_helper.py |
63 | 15 | 48 |
platform/backend/app/tools/yaml/action_boxes.yaml |
56 | 0 | 56 |
platform/backend/app/tools/yaml/gmail.yaml |
14 | 0 | 14 |
platform/backend/app/tools/yaml/hubspot.yaml |
104 | 0 | 104 |
platform/backend/tests/regression/test_langfuse_span_fix.py |
149 | 0 | 149 |
platform/backend/tests/test_closed_loop_adapter.py |
241 | 0 | 241 |
Verify this commit:
git show --stat e8564a6482eeca81c80aff52ec6c03b47fde5947Full Hash: 7978f19c25bf89061e06b57817b4c79d3cae8d25
Short Hash: 7978f19
Timestamp: 2025-11-14 19:01:46 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 03:01:46 UTC
Summary: 1 files changed, 20 insertions(+), 44 deletions(-), net: -24 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
20 | 44 | -24 |
Verify this commit:
git show --stat 7978f19c25bf89061e06b57817b4c79d3cae8d25Full Hash: 4c826456192e7500ea365f2a16e72d9de96242c2
Short Hash: 4c82645
Timestamp: 2025-11-14 19:01:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 03:01:21 UTC
Summary: 3 files changed, 226 insertions(+), 188 deletions(-), net: 38 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
agent-migration-flow.md |
220 | 87 | 133 |
logs/platform/backend/dev.log |
5 | 50 | -45 |
platform/backend/api/inbox.py |
1 | 51 | -50 |
Verify this commit:
git show --stat 4c826456192e7500ea365f2a16e72d9de96242c2Full Hash: 24dbb85db2afae661244b68a5d9fc00713c4c9ce
Short Hash: 24dbb85
Timestamp: 2025-11-14 18:58:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:58:55 UTC
Summary: 2 files changed, 140 insertions(+), 128 deletions(-), net: 12 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
50 | 6 | 44 |
platform/backend/api/inbox.py |
90 | 122 | -32 |
Verify this commit:
git show --stat 24dbb85db2afae661244b68a5d9fc00713c4c9ceFull Hash: 8bc1e9c5e1b17021ee615e5dcb57d5d14d5983d4
Short Hash: 8bc1e9c
Timestamp: 2025-11-14 18:57:42 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:57:41 UTC
Summary: 2 files changed, 84 insertions(+), 373 deletions(-), net: -289 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2 | 265 | -263 |
platform/backend/api/inbox.py |
82 | 108 | -26 |
Verify this commit:
git show --stat 8bc1e9c5e1b17021ee615e5dcb57d5d14d5983d4Full Hash: e248eb7f986be1dd04899fcf7ddd60f7fa6c3283
Short Hash: e248eb7
Timestamp: 2025-11-14 18:55:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:55:12 UTC
Summary: 3 files changed, 16854 insertions(+), 436 deletions(-), net: 16418 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
29 | 423 | -394 |
platform/backend/api/inbox.py |
24 | 13 | 11 |
platform/backend/api/inbox.py.bak2 |
16801 | 0 | 16801 |
Verify this commit:
git show --stat e248eb7f986be1dd04899fcf7ddd60f7fa6c3283Full Hash: f9741d633a6ed6e0540d93707ff02bb57ff46d5a
Short Hash: f9741d6
Timestamp: 2025-11-14 18:53:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:53:54 UTC
Summary: 2 files changed, 256 insertions(+), 214 deletions(-), net: 42 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
103 | 62 | 41 |
platform/backend/api/inbox.py |
153 | 152 | 1 |
Verify this commit:
git show --stat f9741d633a6ed6e0540d93707ff02bb57ff46d5aFull Hash: ecdc25830d7520574a19960b0c2348e6b721493c
Short Hash: ecdc258
Timestamp: 2025-11-14 18:52:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:52:03 UTC
Summary: 2 files changed, 370 insertions(+), 63 deletions(-), net: 307 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
313 | 5 | 308 |
platform/backend/api/inbox.py |
57 | 58 | -1 |
Verify this commit:
git show --stat ecdc25830d7520574a19960b0c2348e6b721493cFull Hash: c04f27e3736ceea7aca77cc38017998266793fa4
Short Hash: c04f27e
Timestamp: 2025-11-14 18:50:50 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:50:50 UTC
Summary: 2 files changed, 206 insertions(+), 74 deletions(-), net: 132 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
146 | 14 | 132 |
platform/backend/api/inbox.py |
60 | 60 | 0 |
Verify this commit:
git show --stat c04f27e3736ceea7aca77cc38017998266793fa4Full Hash: 9adfcc0dbecf761844849ffac4a43eee7245a37c
Short Hash: 9adfcc0
Timestamp: 2025-11-14 18:50:00 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:50:00 UTC
Summary: 2 files changed, 223 insertions(+), 46 deletions(-), net: 177 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
178 | 2 | 176 |
platform/backend/api/inbox.py |
45 | 44 | 1 |
Verify this commit:
git show --stat 9adfcc0dbecf761844849ffac4a43eee7245a37cFull Hash: 97e93d0640c44c6f68adf63e3a6d346b477c0ca0
Short Hash: 97e93d0
Timestamp: 2025-11-14 18:47:39 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:47:39 UTC
Summary: 1 files changed, 2 insertions(+), 176 deletions(-), net: -174 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2 | 176 | -174 |
Verify this commit:
git show --stat 97e93d0640c44c6f68adf63e3a6d346b477c0ca0Full Hash: 577defe9bbf5284c5b1a92b55cb2004c35b669e6
Short Hash: 577defe
Timestamp: 2025-11-14 18:47:05 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:47:05 UTC
Summary: 2 files changed, 612 insertions(+), 614 deletions(-), net: -2 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
21 | 23 | -2 |
platform/backend/api/inbox.py |
591 | 591 | 0 |
Verify this commit:
git show --stat 577defe9bbf5284c5b1a92b55cb2004c35b669e6Full Hash: dccf2e829faa5a8304baedc78efbe4c02887a69b
Short Hash: dccf2e8
Timestamp: 2025-11-14 18:44:22 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:44:21 UTC
Summary: 2 files changed, 772 insertions(+), 596 deletions(-), net: 176 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
181 | 5 | 176 |
platform/backend/api/inbox.py |
591 | 591 | 0 |
Verify this commit:
git show --stat dccf2e829faa5a8304baedc78efbe4c02887a69bFull Hash: 08b83741595563022bbef22e65f68a4d723d481a
Short Hash: 08b8374
Timestamp: 2025-11-14 18:43:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:43:04 UTC
Summary: 1 files changed, 47 insertions(+), 0 deletions(-), net: 47 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
47 | 0 | 47 |
Verify this commit:
git show --stat 08b83741595563022bbef22e65f68a4d723d481aFull Hash: 19a520b7ada7cf87849712a4b042eb2400132c4d
Short Hash: 19a520b
Timestamp: 2025-11-14 18:40:48 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:40:48 UTC
Summary: 2 files changed, 2 insertions(+), 186 deletions(-), net: -184 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 179 | -179 |
platform/backend/api/inbox.py |
2 | 7 | -5 |
Verify this commit:
git show --stat 19a520b7ada7cf87849712a4b042eb2400132c4dFull Hash: c339d5963d9e5a1a46eaf01dcf99f9bdfd417797
Short Hash: c339d59
Timestamp: 2025-11-14 18:37:54 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:37:54 UTC
Summary: 3 files changed, 6903 insertions(+), 1874 deletions(-), net: 5029 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
134 | 2 | 132 |
platform/backend/api/inbox.py |
7 | 2 | 5 |
platform/backend/api/inbox.py.bak |
6762 | 1870 | 4892 |
Verify this commit:
git show --stat c339d5963d9e5a1a46eaf01dcf99f9bdfd417797Full Hash: f5fdefd6014e1bba08b35b5bc1dcfbebd8d7b333
Short Hash: f5fdefd
Timestamp: 2025-11-14 18:35:43 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 02:35:43 UTC
Summary: 6 files changed, 295 insertions(+), 156 deletions(-), net: 139 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.task/checksum/install-platform-backend |
1 | 1 | 0 |
logs/platform/backend/dev.log |
2 | 134 | -132 |
platform/backend/.task/install.ok |
1 | 1 | 0 |
platform/backend/app/tools/yaml/gmail.yaml |
10 | 20 | -10 |
platform/backend/scripts/verify_tool_coverage.py |
176 | 0 | 176 |
platform/backend/tests/test_tool_coverage.py |
105 | 0 | 105 |
Verify this commit:
git show --stat f5fdefd6014e1bba08b35b5bc1dcfbebd8d7b333Full Hash: c3f2a7a5526c473097276fdde36b668b0222b9cd
Short Hash: c3f2a7a
Timestamp: 2025-11-14 17:01:50 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 01:01:50 UTC
Summary: 17 files changed, 1297 insertions(+), 16671 deletions(-), net: -15374 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.task/checksum/install-platform-backend |
1 | 1 | 0 |
Taskfile.yml |
5 | 0 | 5 |
docs/tool-health-dashboard.md |
130 | 0 | 130 |
logs/platform/backend/dev.log |
176 | 16538 | -16362 |
platform/backend/.task/install.ok |
1 | 1 | 0 |
platform/backend/api/inbox.py |
113 | 3 | 110 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
66 | 66 | 0 |
platform/backend/app/agent_engine/closed_loop_adapter.py |
52 | 26 | 26 |
platform/backend/app/agent_engine/closed_loop_controller.py |
35 | 23 | 12 |
platform/backend/app/tools/action_box_helper.py |
125 | 1 | 124 |
platform/backend/app/tools/loaders/prompt_helpers.py |
71 | 0 | 71 |
platform/backend/app/tools/loaders/yaml_loader.py |
23 | 1 | 22 |
platform/backend/app/tools/yaml/action_boxes.yaml |
126 | 0 | 126 |
platform/backend/app/tools/yaml/gmail.yaml |
20 | 10 | 10 |
platform/backend/app/tools/yaml/prompts/inbox.yaml |
4 | 1 | 3 |
platform/backend/scripts/tool_health_report.py |
160 | 0 | 160 |
platform/backend/tests/test_action_box_templates.py |
189 | 0 | 189 |
Verify this commit:
git show --stat c3f2a7a5526c473097276fdde36b668b0222b9cdFull Hash: 3fbd3616cda8e81b47cdfdf3f55b98d3d1364fb6
Short Hash: 3fbd361
Timestamp: 2025-11-14 16:56:11 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 00:56:11 UTC
Summary: 36 files changed, 22605 insertions(+), 1402 deletions(-), net: 21203 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
agent-migration-flow.md |
102 | 0 | 102 |
dev.logs |
4208 | 833 | 3375 |
docs/berthier/buffer-conversation-spec.md |
129 | 0 | 129 |
docs/berthier/gap-closure-plan.md |
38 | 0 | 38 |
docs/berthier/stateless-agent-spec.md |
93 | 0 | 93 |
docs/rollout/closed-loop-shadow.md |
89 | 0 | 89 |
docs/structured-response-plan.md |
51 | 0 | 51 |
logs/platform/backend/dev.log |
16445 | 414 | 16031 |
platform/backend/api/inbox.py |
106 | 1 | 105 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
97 | 67 | 30 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
2 | 2 | 0 |
platform/backend/app/agent_engine/closed_loop_adapter.py |
101 | 23 | 78 |
platform/backend/app/agent_engine/closed_loop_controller.py |
302 | 27 | 275 |
platform/backend/app/agent_engine/langfuse_integration.py |
10 | 4 | 6 |
platform/backend/app/config/__init__.py |
3 | 0 | 3 |
platform/backend/app/tools/loaders/yaml_loader.py |
3 | 0 | 3 |
platform/backend/app/tools/yaml/gmail.yaml |
16 | 2 | 14 |
platform/backend/app/tools/yaml/prompts/inbox.yaml |
50 | 8 | 42 |
platform/backend/main.py |
4 | 1 | 3 |
platform/backend/scripts/run_agent_evals.sh |
15 | 0 | 15 |
platform/backend/scripts/validate_yaml.py |
84 | 0 | 84 |
platform/backend/tests/evals/__init__.py |
6 | 0 | 6 |
platform/backend/tests/evals/eval_scenarios.yaml |
78 | 0 | 78 |
platform/backend/tests/evals/eval_transcripts/__init__.py |
2 | 0 | 2 |
platform/backend/tests/evals/eval_transcripts/summarize_unread_turn1.json |
20 | 0 | 20 |
platform/backend/tests/evals/eval_transcripts/trash_cloudsmith_turn1.json |
20 | 0 | 20 |
platform/backend/tests/evals/eval_transcripts/trash_cloudsmith_turn2.json |
11 | 0 | 11 |
platform/backend/tests/evals/eval_transcripts/write_draft_turn1.json |
20 | 0 | 20 |
platform/backend/tests/evals/eval_transcripts/write_draft_turn2.json |
11 | 0 | 11 |
platform/backend/tests/evals/fixtures/cloudsmith_invoice_snapshot.json |
26 | 0 | 26 |
platform/backend/tests/evals/fixtures/reply_scenario_snapshot.json |
26 | 0 | 26 |
platform/backend/tests/evals/fixtures/unread_threads_snapshot.json |
45 | 0 | 45 |
platform/backend/tests/evals/test_eval_harness.py |
307 | 0 | 307 |
platform/backend/tests/test_closed_loop_controller.py |
26 | 1 | 25 |
platform/frontend/app/globals.css |
56 | 7 | 49 |
platform/frontend/components/inbox/AssistantPane.tsx |
3 | 12 | -9 |
Verify this commit:
git show --stat 3fbd3616cda8e81b47cdfdf3f55b98d3d1364fb6Full Hash: 5819e0daeac6ed2e30011fdc08b7fde542399f22
Short Hash: 5819e0d
Timestamp: 2025-11-14 16:07:37 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 00:07:37 UTC
Summary: 2 files changed, 424 insertions(+), 8530 deletions(-), net: -8106 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
420 | 8526 | -8106 |
platform/backend/app/tools/yaml/gmail.yaml |
4 | 4 | 0 |
Verify this commit:
git show --stat 5819e0daeac6ed2e30011fdc08b7fde542399f22Full Hash: f00d0d4badf473a7388b780fa2cfde201f420cbf
Short Hash: f00d0d4
Timestamp: 2025-11-14 16:06:05 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 00:06:05 UTC
Summary: 1 files changed, 147 insertions(+), 0 deletions(-), net: 147 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
147 | 0 | 147 |
Verify this commit:
git show --stat f00d0d4badf473a7388b780fa2cfde201f420cbfFull Hash: 97c3b876825094acee7062607dc39afa4c4a309b
Short Hash: 97c3b87
Timestamp: 2025-11-14 16:05:47 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-15 00:05:47 UTC
Summary: 24 files changed, 9998 insertions(+), 3453 deletions(-), net: 6545 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
dev.logs |
1118 | 656 | 462 |
eval-spec.md |
57 | 0 | 57 |
logs/platform/backend/dev.log |
5341 | 2797 | 2544 |
platform/backend/api/inbox.py |
52 | 0 | 52 |
platform/backend/app/agent_engine/closed_loop_adapter.py |
248 | 0 | 248 |
platform/backend/app/agent_engine/closed_loop_controller.py |
419 | 0 | 419 |
platform/backend/app/agent_engine/redis_side_channel.py |
472 | 0 | 472 |
platform/backend/app/config/__init__.py |
3 | 0 | 3 |
platform/backend/app/tools/action_box_helper.py |
140 | 0 | 140 |
platform/backend/app/tools/loaders/__init__.py |
24 | 0 | 24 |
platform/backend/app/tools/loaders/tool_registry.py |
133 | 0 | 133 |
platform/backend/app/tools/loaders/yaml_loader.py |
251 | 0 | 251 |
platform/backend/app/tools/payloads/__init__.py |
99 | 0 | 99 |
platform/backend/app/tools/payloads/base.py |
43 | 0 | 43 |
platform/backend/app/tools/payloads/gmail_payloads.py |
48 | 0 | 48 |
platform/backend/app/tools/snapshot_tools.py |
166 | 0 | 166 |
platform/backend/app/tools/yaml/action_boxes.yaml |
310 | 0 | 310 |
platform/backend/app/tools/yaml/gmail.yaml |
457 | 0 | 457 |
platform/backend/app/tools/yaml/prompts/inbox.yaml |
121 | 0 | 121 |
platform/backend/tests/test_action_box_helper.py |
85 | 0 | 85 |
platform/backend/tests/test_closed_loop_controller.py |
139 | 0 | 139 |
platform/backend/tests/test_closed_loop_integration.py |
108 | 0 | 108 |
platform/backend/tests/test_payload_builders.py |
75 | 0 | 75 |
platform/backend/tests/test_yaml_loaders.py |
89 | 0 | 89 |
Verify this commit:
git show --stat 97c3b876825094acee7062607dc39afa4c4a309bFull Hash: a9ed40a2f591f84ff2302efa8566bc092700f96c
Short Hash: a9ed40a
Timestamp: 2025-11-14 15:48:31 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat(hubspot): add feature flag support
Summary: 8 files changed, 938 insertions(+), 3 deletions(-), net: 935 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/hubspot.py |
285 | 0 | 285 |
platform/backend/app/agent_engine/specialized_agents.py |
241 | 0 | 241 |
platform/backend/app/prompts/hubspot_strategy.py |
106 | 0 | 106 |
platform/backend/app/tools/hubspot_routing_matrix.py |
141 | 0 | 141 |
platform/backend/app/tools/payload_builders.py |
95 | 0 | 95 |
platform/backend/app/tools/schemas.py |
28 | 0 | 28 |
platform/backend/main.py |
2 | 1 | 1 |
platform/backend/tests/unit/test_tool_payloads.py |
40 | 2 | 38 |
Verify this commit:
git show --stat a9ed40a2f591f84ff2302efa8566bc092700f96cFull Hash: 163ada0483af6c4334acbe36d20f59762eda5437
Short Hash: 163ada0
Timestamp: 2025-11-14 15:32:23 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:32:22 UTC
Summary: 13 files changed, 5819 insertions(+), 4178 deletions(-), net: 1641 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
dev.logs |
805 | 1682 | -877 |
logs/platform/backend/dev.log |
3709 | 2452 | 1257 |
platform/backend/api/inbox.py |
28 | 4 | 24 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
34 | 3 | 31 |
platform/backend/app/agent_engine/transcript_manager.py |
153 | 0 | 153 |
platform/backend/app/config/__init__.py |
4 | 0 | 4 |
platform/backend/app/services/gmail_facade.py |
61 | 37 | 24 |
platform/backend/app/tools/payload_builders.py |
449 | 0 | 449 |
platform/backend/app/tools/schemas.py |
138 | 0 | 138 |
platform/backend/tests/unit/test_module_imports.py |
106 | 0 | 106 |
platform/backend/tests/unit/test_tool_payloads.py |
170 | 0 | 170 |
platform/backend/tests/unit/test_transcript_trim.py |
150 | 0 | 150 |
pyproject.toml |
12 | 0 | 12 |
Verify this commit:
git show --stat 163ada0483af6c4334acbe36d20f59762eda5437Full Hash: 08c35b4dc21a25accc36a8df92e2fb25e20f1ee7
Short Hash: 08c35b4
Timestamp: 2025-11-14 15:18:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:18:55 UTC
Summary: 1 files changed, 130 insertions(+), 0 deletions(-), net: 130 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
130 | 0 | 130 |
Verify this commit:
git show --stat 08c35b4dc21a25accc36a8df92e2fb25e20f1ee7Full Hash: 574876f5909bf0ff76cc198bb8fda147fdb9ec33
Short Hash: 574876f
Timestamp: 2025-11-14 15:18:42 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:18:42 UTC
Summary: 9 files changed, 6531 insertions(+), 862 deletions(-), net: 5669 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
dev.logs |
2005 | 804 | 1201 |
logs/platform/backend/dev.log |
4355 | 29 | 4326 |
platform/backend/api/inbox.py |
8 | 0 | 8 |
platform/backend/app/agent_engine/anthropic_client.py |
16 | 10 | 6 |
platform/backend/app/agent_engine/transcript_manager.py |
25 | 11 | 14 |
platform/backend/app/constants/labels.py |
10 | 0 | 10 |
platform/backend/app/models/anthropic_transcript_cache.py |
7 | 8 | -1 |
platform/backend/app/services/gmail_service.py |
97 | 0 | 97 |
platform/backend/app/services/label_sync_service.py |
8 | 0 | 8 |
Verify this commit:
git show --stat 574876f5909bf0ff76cc198bb8fda147fdb9ec33Full Hash: b050f4b043db338ba4aa9226bd1d304c31db5bb6
Short Hash: b050f4b
Timestamp: 2025-11-14 15:07:14 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:07:14 UTC
Summary: 2 files changed, 35 insertions(+), 60 deletions(-), net: -25 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
29 | 57 | -28 |
platform/backend/app/models/anthropic_transcript_cache.py |
6 | 3 | 3 |
Verify this commit:
git show --stat b050f4b043db338ba4aa9226bd1d304c31db5bb6Full Hash: 32c9602d83053749cb5c83ccd72701f7c767d252
Short Hash: 32c9602
Timestamp: 2025-11-14 15:04:13 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:04:13 UTC
Summary: 2 files changed, 112 insertions(+), 1264 deletions(-), net: -1152 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
108 | 1258 | -1150 |
platform/backend/app/models/anthropic_transcript_cache.py |
4 | 6 | -2 |
Verify this commit:
git show --stat 32c9602d83053749cb5c83ccd72701f7c767d252Full Hash: 4c298f28d233789405fd313e6ab66dd56ab6e17d
Short Hash: 4c298f2
Timestamp: 2025-11-14 15:02:29 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:02:29 UTC
Summary: 2 files changed, 1203 insertions(+), 1016 deletions(-), net: 187 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
dev.logs |
569 | 406 | 163 |
logs/platform/backend/dev.log |
634 | 610 | 24 |
Verify this commit:
git show --stat 4c298f28d233789405fd313e6ab66dd56ab6e17dFull Hash: 78f3ca5994d4adfc42de1059c99944bee26850de
Short Hash: 78f3ca5
Timestamp: 2025-11-14 15:01:00 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:01:00 UTC
Summary: 1 files changed, 120 insertions(+), 0 deletions(-), net: 120 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
120 | 0 | 120 |
Verify this commit:
git show --stat 78f3ca5994d4adfc42de1059c99944bee26850deFull Hash: 2b1b72ac02e1c58cebf5775d4bd55b1b8084147a
Short Hash: 2b1b72a
Timestamp: 2025-11-14 15:00:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 23:00:55 UTC
Summary: 6 files changed, 2329 insertions(+), 529 deletions(-), net: 1800 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
dev.logs |
1104 | 95 | 1009 |
logs/platform/backend/dev.log |
972 | 427 | 545 |
platform/backend/app/agent_engine/anthropic_client.py |
3 | 3 | 0 |
platform/backend/migrations/README_ANTHROPIC_TRANSCRIPTS.md |
63 | 0 | 63 |
platform/backend/run_migrations.py |
17 | 4 | 13 |
platform/backend/verify_transcript_cache.py |
170 | 0 | 170 |
Verify this commit:
git show --stat 2b1b72ac02e1c58cebf5775d4bd55b1b8084147aFull Hash: 55725a6643292af6b511d77f0d5fa48ac368b392
Short Hash: 55725a6
Timestamp: 2025-11-14 14:56:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 22:56:20 UTC
Summary: 3 files changed, 208 insertions(+), 3733 deletions(-), net: -3525 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
159 | 3733 | -3574 |
platform/backend/app/models/anthropic_transcript_cache.py |
15 | 0 | 15 |
platform/backend/app/tools/action_box_tool.py |
34 | 0 | 34 |
Verify this commit:
git show --stat 55725a6643292af6b511d77f0d5fa48ac368b392Full Hash: e0eccd8f1a883732cce5466d4d6c3ba7154f59cf
Short Hash: e0eccd8
Timestamp: 2025-11-14 14:54:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 22:54:21 UTC
Summary: 6 files changed, 6133 insertions(+), 942 deletions(-), net: 5191 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
1951 | 690 | 1261 |
dev.logs |
202 | 0 | 202 |
logs/platform/backend/dev.log |
3784 | 181 | 3603 |
platform/backend/app/agent_engine/anthropic_client.py |
72 | 64 | 8 |
platform/backend/app/models/anthropic_transcript_cache.py |
78 | 7 | 71 |
platform/backend/migrations/106_clean_anthropic_transcripts.sql |
46 | 0 | 46 |
Verify this commit:
git show --stat e0eccd8f1a883732cce5466d4d6c3ba7154f59cfFull Hash: 23526b2030d33eec588658e31e677bd8250d7042
Short Hash: 23526b2
Timestamp: 2025-11-14 14:34:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 22:34:20 UTC
Summary: 62 files changed, 763 insertions(+), 190 deletions(-), net: 573 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
MAKEFILE_VS_TASKFILE.md |
1 | 0 | 1 |
MCP_IMPLEMENTATION_STATUS.md |
1 | 0 | 1 |
TASKFILE_MIGRATION.md |
1 | 0 | 1 |
TASKFILE_VERIFICATION.md |
1 | 0 | 1 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
666 | 181 | 485 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
1 | 0 | 1 |
platform/backend/app/agent_engine/anthropic_client.py |
9 | 3 | 6 |
platform/backend/app/agent_engine/model_utils.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/specialized_agents.py |
6 | 1 | 5 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/models/anthropic_transcript_cache.py |
23 | 3 | 20 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/prompts/prompt_executor.py |
2 | 2 | 0 |
platform/backend/app/utils/name_utils.py |
1 | 0 | 1 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
1 | 0 | 1 |
platform/backend/docs/VERIFICATION_CHECK.md |
1 | 0 | 1 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/frontend/components/ConsoleLoggerInit.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/lib/safe-zod-validation.ts |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/task_check_prod_readiness.sh |
1 | 0 | 1 |
scripts/task_ci_setup_secrets.sh |
1 | 0 | 1 |
scripts/task_ci_test.sh |
1 | 0 | 1 |
scripts/task_create_prod_pr.sh |
1 | 0 | 1 |
scripts/task_deploy_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_prod_pr_flow.sh |
1 | 0 | 1 |
scripts/task_deploy_production_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_render.sh |
1 | 0 | 1 |
scripts/task_deploy_render_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_render_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_staging_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_app.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_www.sh |
1 | 0 | 1 |
scripts/task_deploy_website_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_website_full_local.sh |
1 | 0 | 1 |
scripts/task_deploy_website_prod.sh |
1 | 0 | 1 |
scripts/task_import_full.sh |
1 | 0 | 1 |
scripts/task_logs.sh |
1 | 0 | 1 |
scripts/task_mlflow_ui.sh |
1 | 0 | 1 |
scripts/task_posthog_bootstrap.sh |
1 | 0 | 1 |
scripts/task_publish_dev.sh |
1 | 0 | 1 |
scripts/task_sync_platform_env.sh |
1 | 0 | 1 |
scripts/task_sync_render_env.sh |
1 | 0 | 1 |
scripts/task_sync_website_env.sh |
1 | 0 | 1 |
scripts/task_test_render_backend.sh |
1 | 0 | 1 |
scripts/task_verify_integration.sh |
1 | 0 | 1 |
scripts/task_verify_vercel_links.sh |
1 | 0 | 1 |
Verify this commit:
git show --stat 23526b2030d33eec588658e31e677bd8250d7042Full Hash: d116f1fe48e95f105eaf8ff7fa0af8e14f8abe3c
Short Hash: d116f1f
Timestamp: 2025-11-14 12:57:07 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:57:07 UTC
Summary: 5 files changed, 2035 insertions(+), 4542 deletions(-), net: -2507 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
9 | 4542 | -4533 |
platform/backend/app/services/memory_retrieval.py |
560 | 0 | 560 |
platform/backend/app/services/prompt_telemetry.py |
563 | 0 | 563 |
platform/backend/docs/CHIEF_OF_STAFF_IMPLEMENTATION.md |
275 | 0 | 275 |
platform/backend/tests/test_prompt_contracts.py |
628 | 0 | 628 |
Verify this commit:
git show --stat d116f1fe48e95f105eaf8ff7fa0af8e14f8abe3cFull Hash: 2b9b9fa5fb11eebe3559d130cc7064b947add813
Short Hash: 2b9b9fa
Timestamp: 2025-11-14 12:29:39 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:29:39 UTC
Summary: 21 files changed, 6933 insertions(+), 1188 deletions(-), net: 5745 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/prompt-contracts.md |
43 | 0 | 43 |
logs/platform/backend/dev.log |
3755 | 1128 | 2627 |
platform/backend/api/ai_prompts.py |
207 | 51 | 156 |
platform/backend/api/ai_prompts_v2.py |
579 | 0 | 579 |
platform/backend/app/models/anthropic_transcript_cache.py |
4 | 2 | 2 |
platform/backend/app/prompts/chief_of_staff_prompt.py |
203 | 0 | 203 |
platform/backend/app/prompts/default_contracts.py |
533 | 0 | 533 |
platform/backend/app/prompts/prompt_contracts.py |
2 | 0 | 2 |
platform/backend/app/prompts/prompt_executor.py |
242 | 0 | 242 |
platform/backend/app/services/ai_memory_service.py |
11 | 0 | 11 |
platform/backend/app/services/guardrails_processor.py |
469 | 0 | 469 |
platform/backend/app/services/prompt_contract_service.py |
545 | 0 | 545 |
platform/backend/app/services/snapshot_service.py |
5 | 3 | 2 |
platform/backend/migrations/104_add_action_requests_and_snapshot_cache.sql |
4 | 4 | 0 |
platform/backend/migrations/107_add_action_request_statuses.sql |
34 | 0 | 34 |
platform/backend/migrations/107_prompt_contracts_enhanced.sql |
171 | 0 | 171 |
platform/backend/tests/unit/prompts/__init__.py |
0 | 0 | 0 |
platform/backend/tests/unit/prompts/test_prompt_executor.py |
69 | 0 | 69 |
platform/backend/tests/unit/prompts/test_prompt_guardrails.py |
25 | 0 | 25 |
platform/backend/tests/unit/prompts/test_prompt_renderer.py |
16 | 0 | 16 |
platform/backend/tests/unit/prompts/test_prompt_validation.py |
16 | 0 | 16 |
Verify this commit:
git show --stat 2b9b9fa5fb11eebe3559d130cc7064b947add813Full Hash: a7cf0f8c44740890f56a3bc6c7531ad91e2ab09b
Short Hash: a7cf0f8
Timestamp: 2025-11-14 12:17:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:17:25 UTC
Summary: 2 files changed, 2206 insertions(+), 119 deletions(-), net: 2087 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
1997 | 15 | 1982 |
platform/backend/api/ai_prompts.py |
209 | 104 | 105 |
Verify this commit:
git show --stat a7cf0f8c44740890f56a3bc6c7531ad91e2ab09bFull Hash: 25888f66e79d2a3af2d28ff1f8ce4670c39e5c29
Short Hash: 25888f6
Timestamp: 2025-11-14 12:14:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:14:20 UTC
Summary: 1 files changed, 111 insertions(+), 0 deletions(-), net: 111 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
111 | 0 | 111 |
Verify this commit:
git show --stat 25888f66e79d2a3af2d28ff1f8ce4670c39e5c29Full Hash: 8617ebf44508ec3bc2af96517fb25e9218d4f3da
Short Hash: 8617ebf
Timestamp: 2025-11-14 12:13:45 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:13:45 UTC
Summary: 3 files changed, 35 insertions(+), 429 deletions(-), net: -394 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 325 | -325 |
platform/backend/api/ai_prompts.py |
33 | 102 | -69 |
platform/backend/migrations/106_prompt_contracts.sql |
2 | 2 | 0 |
Verify this commit:
git show --stat 8617ebf44508ec3bc2af96517fb25e9218d4f3daFull Hash: 44e8fed91188d35fdc9a13996a0dd1cd88dccc08
Short Hash: 44e8fed
Timestamp: 2025-11-14 12:12:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:12:12 UTC
Summary: 7 files changed, 684 insertions(+), 116 deletions(-), net: 568 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
325 | 0 | 325 |
platform/backend/api/ai_prompts.py |
53 | 102 | -49 |
platform/backend/app/prompts/prompt_contracts.py |
84 | 0 | 84 |
platform/backend/app/prompts/prompt_guardrails.py |
75 | 0 | 75 |
platform/backend/app/prompts/prompt_renderer.py |
61 | 0 | 61 |
platform/backend/app/prompts/prompt_validation.py |
37 | 0 | 37 |
platform/backend/app/services/ai_memory_service.py |
49 | 14 | 35 |
Verify this commit:
git show --stat 44e8fed91188d35fdc9a13996a0dd1cd88dccc08Full Hash: ee08d9b1716ecb453114ea114690fdd0fdbcded7
Short Hash: ee08d9b
Timestamp: 2025-11-14 12:10:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:10:25 UTC
Summary: 3 files changed, 99 insertions(+), 284 deletions(-), net: -185 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 230 | -230 |
platform/backend/api/ai_prompts.py |
8 | 54 | -46 |
platform/backend/migrations/106_prompt_contracts.sql |
91 | 0 | 91 |
Verify this commit:
git show --stat ee08d9b1716ecb453114ea114690fdd0fdbcded7Full Hash: 810f16ec6c3b0dedd315772b55f95569b3982eee
Short Hash: 810f16e
Timestamp: 2025-11-14 12:09:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:09:25 UTC
Summary: 2 files changed, 79 insertions(+), 532 deletions(-), net: -453 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
26 | 421 | -395 |
platform/backend/api/ai_prompts.py |
53 | 111 | -58 |
Verify this commit:
git show --stat 810f16ec6c3b0dedd315772b55f95569b3982eeeFull Hash: be67db388e66b99dbd89f51c7f234d59bea8d654
Short Hash: be67db3
Timestamp: 2025-11-14 12:08:29 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:08:29 UTC
Summary: 4 files changed, 817 insertions(+), 111 deletions(-), net: 706 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
625 | 0 | 625 |
platform/backend/api/ai_prompts.py |
166 | 111 | 55 |
platform/backend/migrations/106_add_prompt_contract_columns.sql |
24 | 0 | 24 |
pyproject.toml |
2 | 0 | 2 |
Verify this commit:
git show --stat be67db388e66b99dbd89f51c7f234d59bea8d654Full Hash: 3c4785abf466cce317c49a503fab287f4e4eb3b1
Short Hash: 3c4785a
Timestamp: 2025-11-14 12:06:47 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:06:47 UTC
Summary: 2 files changed, 6 insertions(+), 716 deletions(-), net: -710 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 711 | -711 |
platform/backend/app/observability/__init__.py |
6 | 5 | 1 |
Verify this commit:
git show --stat 3c4785abf466cce317c49a503fab287f4e4eb3b1Full Hash: 1ee9935e603a67c7421ec88eaa2815b3f4048c82
Short Hash: 1ee9935
Timestamp: 2025-11-14 12:05:35 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 20:05:35 UTC
Summary: 74 files changed, 1695 insertions(+), 311 deletions(-), net: 1384 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
MAKEFILE_VS_TASKFILE.md |
1 | 0 | 1 |
MCP_IMPLEMENTATION_STATUS.md |
1 | 0 | 1 |
TASKFILE_MIGRATION.md |
1 | 0 | 1 |
TASKFILE_VERIFICATION.md |
1 | 0 | 1 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
710 | 1 | 709 |
platform/backend/api/inbox.py |
34 | 225 | -191 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
1 | 0 | 1 |
platform/backend/app/agent_engine/anthropic_client.py |
91 | 0 | 91 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
16 | 1 | 15 |
platform/backend/app/agent_engine/model_utils.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/config/__init__.py |
1 | 0 | 1 |
platform/backend/app/models/__init__.py |
2 | 1 | 1 |
platform/backend/app/models/action_request.py |
76 | 1 | 75 |
platform/backend/app/models/action_request_status.py |
1 | 1 | 0 |
platform/backend/app/models/anthropic_transcript_cache.py |
185 | 0 | 185 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/observability/logger.py |
94 | 18 | 76 |
platform/backend/app/services/action_request_service.py |
120 | 22 | 98 |
platform/backend/app/services/gmail_facade.py |
25 | 11 | 14 |
platform/backend/app/services/snapshot_service.py |
161 | 5 | 156 |
platform/backend/app/tasks/action_request_worker.py |
41 | 25 | 16 |
platform/backend/app/tools/action_box_tool.py |
2 | 0 | 2 |
platform/backend/app/utils/name_utils.py |
1 | 0 | 1 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
1 | 0 | 1 |
platform/backend/docs/VERIFICATION_CHECK.md |
1 | 0 | 1 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/104_add_action_requests_and_snapshot_cache.sql |
53 | 0 | 53 |
platform/backend/migrations/105_add_anthropic_transcripts.sql |
26 | 0 | 26 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/frontend/components/ConsoleLoggerInit.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/lib/safe-zod-validation.ts |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/task_check_prod_readiness.sh |
1 | 0 | 1 |
scripts/task_ci_setup_secrets.sh |
1 | 0 | 1 |
scripts/task_ci_test.sh |
1 | 0 | 1 |
scripts/task_create_prod_pr.sh |
1 | 0 | 1 |
scripts/task_deploy_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_prod_pr_flow.sh |
1 | 0 | 1 |
scripts/task_deploy_production_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_render.sh |
1 | 0 | 1 |
scripts/task_deploy_render_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_render_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_staging_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_app.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_www.sh |
1 | 0 | 1 |
scripts/task_deploy_website_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_website_full_local.sh |
1 | 0 | 1 |
scripts/task_deploy_website_prod.sh |
1 | 0 | 1 |
scripts/task_import_full.sh |
1 | 0 | 1 |
scripts/task_logs.sh |
1 | 0 | 1 |
scripts/task_mlflow_ui.sh |
1 | 0 | 1 |
scripts/task_posthog_bootstrap.sh |
1 | 0 | 1 |
scripts/task_publish_dev.sh |
1 | 0 | 1 |
scripts/task_sync_platform_env.sh |
1 | 0 | 1 |
scripts/task_sync_render_env.sh |
1 | 0 | 1 |
scripts/task_sync_website_env.sh |
1 | 0 | 1 |
scripts/task_test_render_backend.sh |
1 | 0 | 1 |
scripts/task_verify_integration.sh |
1 | 0 | 1 |
scripts/task_verify_vercel_links.sh |
1 | 0 | 1 |
Verify this commit:
git show --stat 1ee9935e603a67c7421ec88eaa2815b3f4048c82Full Hash: 4a89f39e800b386813e3120562d5eb32df371d73
Short Hash: 4a89f39
Timestamp: 2025-11-14 11:39:45 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 19:39:45 UTC
Summary: 11 files changed, 1129 insertions(+), 6600 deletions(-), net: -5471 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
1 | 6598 | -6597 |
platform/backend/app/models/__init__.py |
6 | 0 | 6 |
platform/backend/app/models/action_request.py |
80 | 0 | 80 |
platform/backend/app/models/action_request_status.py |
48 | 0 | 48 |
platform/backend/app/services/action_request_service.py |
172 | 0 | 172 |
platform/backend/app/services/gmail_facade.py |
264 | 0 | 264 |
platform/backend/app/services/snapshot_service.py |
181 | 0 | 181 |
platform/backend/app/tasks/action_request_worker.py |
254 | 0 | 254 |
platform/backend/app/tools/action_box_tool.py |
68 | 1 | 67 |
platform/backend/celery_app.py |
1 | 1 | 0 |
platform/frontend/lib/action-request.ts |
54 | 0 | 54 |
Verify this commit:
git show --stat 4a89f39e800b386813e3120562d5eb32df371d73Full Hash: 0b9be96b96ee9cbbb1fa9489893b07c5cc38c931
Short Hash: 0b9be96
Timestamp: 2025-11-14 11:35:37 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 19:35:37 UTC
Summary: 7 files changed, 5448 insertions(+), 6381 deletions(-), net: -933 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
556 | 2528 | -1972 |
logs/platform/backend/dev.log |
4616 | 3828 | 788 |
platform/backend/api/inbox.py |
1 | 1 | 0 |
platform/backend/app/agent_engine/anthropic_client.py |
138 | 0 | 138 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
54 | 19 | 35 |
platform/backend/app/agent_engine/specialized_agents.py |
1 | 1 | 0 |
platform/backend/app/prompts/gmail_strategy.py |
82 | 4 | 78 |
Verify this commit:
git show --stat 0b9be96b96ee9cbbb1fa9489893b07c5cc38c931Full Hash: 6776d6f51c5cee1e03a1742afe23efbad418f8e7
Short Hash: 6776d6f
Timestamp: 2025-11-14 10:48:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 18:48:21 UTC
Summary: 4 files changed, 3800 insertions(+), 6602 deletions(-), net: -2802 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
3494 | 6534 | -3040 |
platform/backend/app/agent_engine/anthropic_client.py |
75 | 4 | 71 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
165 | 55 | 110 |
platform/backend/app/agent_engine/thinking_utils.py |
66 | 9 | 57 |
Verify this commit:
git show --stat 6776d6f51c5cee1e03a1742afe23efbad418f8e7Full Hash: 5194c89f45138b0a4e4ca2f06af8e30f33fdf255
Short Hash: 5194c89
Timestamp: 2025-11-14 09:49:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:49:19 UTC
Summary: 1 files changed, 128 insertions(+), 0 deletions(-), net: 128 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
128 | 0 | 128 |
Verify this commit:
git show --stat 5194c89f45138b0a4e4ca2f06af8e30f33fdf255Full Hash: 35fbd73f54bccd72c76f81a01b649b4c2c565ef0
Short Hash: 35fbd73
Timestamp: 2025-11-14 09:49:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:49:12 UTC
Summary: 10 files changed, 11329 insertions(+), 27734 deletions(-), net: -16405 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
2439 | 27354 | -24915 |
logs/platform/backend/dev.log |
8419 | 287 | 8132 |
platform/backend/api/inbox.py |
78 | 27 | 51 |
platform/backend/app/agent_engine/anthropic_client.py |
62 | 37 | 25 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
151 | 3 | 148 |
platform/backend/app/agent_engine/approval_checker.py |
66 | 0 | 66 |
platform/backend/app/models/action_box_audit.py |
5 | 3 | 2 |
platform/backend/migrations/103_rename_action_box_audit_metadata.sql |
7 | 0 | 7 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
76 | 14 | 62 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
26 | 9 | 17 |
Verify this commit:
git show --stat 35fbd73f54bccd72c76f81a01b649b4c2c565ef0Full Hash: ff4e69d2d407a4e3c0cddde8fad534a5caf3791d
Short Hash: ff4e69d
Timestamp: 2025-11-14 09:36:35 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:36:35 UTC
Summary: 1 files changed, 2 insertions(+), 0 deletions(-), net: 2 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/models/__init__.py |
2 | 0 | 2 |
Verify this commit:
git show --stat ff4e69d2d407a4e3c0cddde8fad534a5caf3791dFull Hash: 04c8c14b70b62378bd84490905c601895f7cee02
Short Hash: 04c8c14
Timestamp: 2025-11-14 09:36:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:36:25 UTC
Summary: 59 files changed, 250 insertions(+), 3242 deletions(-), net: -2992 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
MAKEFILE_VS_TASKFILE.md |
1 | 0 | 1 |
MCP_IMPLEMENTATION_STATUS.md |
1 | 0 | 1 |
TASKFILE_MIGRATION.md |
1 | 0 | 1 |
TASKFILE_VERIFICATION.md |
1 | 0 | 1 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
182 | 3235 | -3053 |
platform/backend/api/debug.py |
11 | 7 | 4 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
1 | 0 | 1 |
platform/backend/app/agent_engine/model_utils.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/utils/name_utils.py |
1 | 0 | 1 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
1 | 0 | 1 |
platform/backend/docs/VERIFICATION_CHECK.md |
1 | 0 | 1 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/frontend/components/ConsoleLoggerInit.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/lib/safe-zod-validation.ts |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/task_check_prod_readiness.sh |
1 | 0 | 1 |
scripts/task_ci_setup_secrets.sh |
1 | 0 | 1 |
scripts/task_ci_test.sh |
1 | 0 | 1 |
scripts/task_create_prod_pr.sh |
1 | 0 | 1 |
scripts/task_deploy_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_prod_pr_flow.sh |
1 | 0 | 1 |
scripts/task_deploy_production_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_render.sh |
1 | 0 | 1 |
scripts/task_deploy_render_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_render_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_staging_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_app.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_www.sh |
1 | 0 | 1 |
scripts/task_deploy_website_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_website_full_local.sh |
1 | 0 | 1 |
scripts/task_deploy_website_prod.sh |
1 | 0 | 1 |
scripts/task_import_full.sh |
1 | 0 | 1 |
scripts/task_logs.sh |
1 | 0 | 1 |
scripts/task_mlflow_ui.sh |
1 | 0 | 1 |
scripts/task_posthog_bootstrap.sh |
1 | 0 | 1 |
scripts/task_publish_dev.sh |
1 | 0 | 1 |
scripts/task_sync_platform_env.sh |
1 | 0 | 1 |
scripts/task_sync_render_env.sh |
1 | 0 | 1 |
scripts/task_sync_website_env.sh |
1 | 0 | 1 |
scripts/task_test_render_backend.sh |
1 | 0 | 1 |
scripts/task_verify_integration.sh |
1 | 0 | 1 |
scripts/task_verify_vercel_links.sh |
1 | 0 | 1 |
Verify this commit:
git show --stat 04c8c14b70b62378bd84490905c601895f7cee02Full Hash: 477c3e36fac2a88803d2433863b0d7cfd88c50cf
Short Hash: 477c3e3
Timestamp: 2025-11-14 09:32:46 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: Consolidate duplicate Gmail tool constants and fix NameError
Summary: 1 files changed, 4 insertions(+), 34 deletions(-), net: -30 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
4 | 34 | -30 |
Verify this commit:
git show --stat 477c3e36fac2a88803d2433863b0d7cfd88c50cfFull Hash: 7d85b112ea1c3cf4b391855dd6b5a20021c552fb
Short Hash: 7d85b11
Timestamp: 2025-11-14 09:28:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:28:59 UTC
Summary: 9 files changed, 3558 insertions(+), 289 deletions(-), net: 3269 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2767 | 266 | 2501 |
platform/backend/api/debug.py |
228 | 0 | 228 |
platform/backend/api/inbox.py |
47 | 20 | 27 |
platform/backend/app/agent_engine/specialized_agents.py |
11 | 2 | 9 |
platform/backend/app/models/action_box_audit.py |
116 | 0 | 116 |
platform/backend/app/models/user.py |
1 | 0 | 1 |
platform/backend/app/tools/gmail_routing_matrix.py |
327 | 0 | 327 |
platform/backend/main.py |
2 | 1 | 1 |
platform/backend/migrations/102_add_action_box_audits.sql |
59 | 0 | 59 |
Verify this commit:
git show --stat 7d85b112ea1c3cf4b391855dd6b5a20021c552fbFull Hash: ae68a09d8da44a1727fb27217f4d8b91568df496
Short Hash: ae68a09
Timestamp: 2025-11-14 09:19:38 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: Gmail tool routing and action box display issues
Summary: 1 files changed, 3 insertions(+), 20 deletions(-), net: -17 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
3 | 20 | -17 |
Verify this commit:
git show --stat ae68a09d8da44a1727fb27217f4d8b91568df496Full Hash: f73f21ef010f35dc38a2a1ba82691723049cb60c
Short Hash: f73f21e
Timestamp: 2025-11-14 09:18:49 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:18:49 UTC
Summary: 4 files changed, 757 insertions(+), 7622 deletions(-), net: -6865 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
403 | 7572 | -7169 |
platform/backend/api/inbox.py |
121 | 44 | 77 |
platform/backend/app/agent_engine/anthropic_client.py |
37 | 0 | 37 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
196 | 6 | 190 |
Verify this commit:
git show --stat f73f21ef010f35dc38a2a1ba82691723049cb60cFull Hash: a5ee4da778be106368bb92137aafe1f10f864492
Short Hash: a5ee4da
Timestamp: 2025-11-14 09:17:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:17:03 UTC
Summary: 2 files changed, 221 insertions(+), 0 deletions(-), net: 221 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
122 | 0 | 122 |
platform/backend/api/inbox.py |
99 | 0 | 99 |
Verify this commit:
git show --stat a5ee4da778be106368bb92137aafe1f10f864492Full Hash: cf404aa963d55f6e6bf1163acb7340fb4989ff27
Short Hash: cf404aa
Timestamp: 2025-11-14 09:17:02 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:17:02 UTC
Summary: 8 files changed, 7135 insertions(+), 2279 deletions(-), net: 4856 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
6517 | 2018 | 4499 |
platform/backend/api/inbox.py |
178 | 60 | 118 |
platform/backend/app/agent_engine/anthropic_client.py |
86 | 0 | 86 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
232 | 2 | 230 |
platform/backend/app/agent_engine/specialized_agents.py |
83 | 147 | -64 |
platform/backend/app/config/__init__.py |
1 | 0 | 1 |
platform/backend/app/tools/arcade_mcp_client.py |
36 | 26 | 10 |
platform/frontend/components/inbox/ActionBoxV2.tsx |
2 | 26 | -24 |
Verify this commit:
git show --stat cf404aa963d55f6e6bf1163acb7340fb4989ff27Full Hash: 4268645cb45070b517461391589c19fdc77b32e9
Short Hash: 4268645
Timestamp: 2025-11-14 09:08:38 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:08:38 UTC
Summary: 1 files changed, 20 insertions(+), 0 deletions(-), net: 20 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
20 | 0 | 20 |
Verify this commit:
git show --stat 4268645cb45070b517461391589c19fdc77b32e9Full Hash: 7f9ff4641f25fd8fa4324697a040e7ebacfb75af
Short Hash: 7f9ff46
Timestamp: 2025-11-14 09:08:33 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 17:08:33 UTC
Summary: 4 files changed, 2357 insertions(+), 4100 deletions(-), net: -1743 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2004 | 4090 | -2086 |
platform/backend/api/inbox.py |
49 | 7 | 42 |
platform/backend/app/agent_engine/anthropic_client.py |
209 | 2 | 207 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
95 | 1 | 94 |
Verify this commit:
git show --stat 7f9ff4641f25fd8fa4324697a040e7ebacfb75afFull Hash: bfa1c9267bab1ad86e3b45da0fabe3310e859864
Short Hash: bfa1c92
Timestamp: 2025-11-14 08:58:45 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: Handle orphaned tool_use blocks when resuming conversations
Summary: 1 files changed, 148 insertions(+), 0 deletions(-), net: 148 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/anthropic_client_adapter.py |
148 | 0 | 148 |
Verify this commit:
git show --stat bfa1c9267bab1ad86e3b45da0fabe3310e859864Full Hash: b7c904af73d811a715f73a513382a6d2d28ab1d4
Short Hash: b7c904a
Timestamp: 2025-11-14 08:54:40 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: Add placeholder tool_results for all remaining tools on interrupts
Summary: 1 files changed, 92 insertions(+), 0 deletions(-), net: 92 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/anthropic_client_adapter.py |
92 | 0 | 92 |
Verify this commit:
git show --stat b7c904af73d811a715f73a513382a6d2d28ab1d4Full Hash: bf7a076a0d7ad188ed2e1bad31452c20e3468d58
Short Hash: bf7a076
Timestamp: 2025-11-14 08:51:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:51:03 UTC
Summary: 3 files changed, 7778 insertions(+), 4452 deletions(-), net: 3326 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
3761 | 2343 | 1418 |
logs/platform/backend/dev.log |
3951 | 2109 | 1842 |
platform/backend/api/inbox.py |
66 | 0 | 66 |
Verify this commit:
git show --stat bf7a076a0d7ad188ed2e1bad31452c20e3468d58Full Hash: cde53e193240388feb01d4d8b8ac84a8bea753e4
Short Hash: cde53e1
Timestamp: 2025-11-14 08:43:24 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: Display agent text alongside action boxes
Summary: 1 files changed, 129 insertions(+), 16 deletions(-), net: 113 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/anthropic_client_adapter.py |
129 | 16 | 113 |
Verify this commit:
git show --stat cde53e193240388feb01d4d8b8ac84a8bea753e4Full Hash: 2e68f21510ef3d7dbe0a6eca77ce761266f5e843
Short Hash: 2e68f21
Timestamp: 2025-11-14 08:34:41 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:34:41 UTC
Summary: 7 files changed, 8708 insertions(+), 1835 deletions(-), net: 6873 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
5606 | 88 | 5518 |
logs/platform/backend/dev.log |
2926 | 1628 | 1298 |
platform/backend/api/auth.py |
23 | 2 | 21 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
21 | 4 | 17 |
platform/backend/app/agent_engine/orchestrator.py |
18 | 0 | 18 |
platform/backend/app/agent_engine/specialized_agents.py |
107 | 106 | 1 |
platform/frontend/components/inbox/ActionBoxV2.tsx |
7 | 7 | 0 |
Verify this commit:
git show --stat 2e68f21510ef3d7dbe0a6eca77ce761266f5e843Full Hash: 92d9f525ad5984430d8f74b6eb193ceaad4fea1e
Short Hash: 92d9f52
Timestamp: 2025-11-14 08:27:06 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:27:06 UTC
Summary: 4 files changed, 2272 insertions(+), 406 deletions(-), net: 1866 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2078 | 356 | 1722 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
133 | 8 | 125 |
platform/backend/app/agent_engine/specialized_agents.py |
28 | 26 | 2 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
33 | 16 | 17 |
Verify this commit:
git show --stat 92d9f525ad5984430d8f74b6eb193ceaad4fea1eFull Hash: ccca3c6143a208c35a5a483de4569c2249c05ff6
Short Hash: ccca3c6
Timestamp: 2025-11-14 08:22:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:22:03 UTC
Summary: 3 files changed, 18469 insertions(+), 4925 deletions(-), net: 13544 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
18048 | 355 | 17693 |
logs/platform/backend/dev.log |
415 | 4570 | -4155 |
platform/frontend/components/inbox/AssistantPane.tsx |
6 | 0 | 6 |
Verify this commit:
git show --stat ccca3c6143a208c35a5a483de4569c2249c05ff6Full Hash: 92e87b3d7f15d1a308145d7678a7bc476ac4fdf1
Short Hash: 92e87b3
Timestamp: 2025-11-14 08:18:06 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:18:06 UTC
Summary: 1 files changed, 76 insertions(+), 0 deletions(-), net: 76 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
76 | 0 | 76 |
Verify this commit:
git show --stat 92e87b3d7f15d1a308145d7678a7bc476ac4fdf1Full Hash: 94bb0f13e2c5a21c38e697fd4633bd423179026f
Short Hash: 94bb0f1
Timestamp: 2025-11-14 08:17:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:17:59 UTC
Summary: 9 files changed, 5678 insertions(+), 34769 deletions(-), net: -29091 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
597 | 34748 | -34151 |
logs/platform/backend/dev.log |
4974 | 0 | 4974 |
platform/backend/api/inbox.py |
3 | 0 | 3 |
platform/backend/app/agent_engine/approval_checker.py |
0 | 4 | -4 |
platform/backend/app/agent_engine/guardrails/prompts.py |
3 | 3 | 0 |
platform/backend/app/agent_engine/orchestrator.py |
10 | 9 | 1 |
platform/backend/app/prompts/single_agent_controller.py |
1 | 1 | 0 |
platform/backend/app/tools/action_box_tool.py |
79 | 0 | 79 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
11 | 4 | 7 |
Verify this commit:
git show --stat 94bb0f13e2c5a21c38e697fd4633bd423179026fFull Hash: 6e13ed0318968f6c448920ecfac645ac2db4a431
Short Hash: 6e13ed0
Timestamp: 2025-11-14 08:08:27 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:08:27 UTC
Summary: 2 files changed, 2 insertions(+), 3166 deletions(-), net: -3164 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 3164 | -3164 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
2 | 2 | 0 |
Verify this commit:
git show --stat 6e13ed0318968f6c448920ecfac645ac2db4a431Full Hash: 215ae30a51bb7ddd05686072526bfe74770d1da0
Short Hash: 215ae30
Timestamp: 2025-11-14 08:07:33 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:07:33 UTC
Summary: 1 files changed, 1 insertions(+), 1 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/anthropic_client_adapter.py |
1 | 1 | 0 |
Verify this commit:
git show --stat 215ae30a51bb7ddd05686072526bfe74770d1da0Full Hash: 9140a677e8bea8600a0b31538fec0f19f70a5763
Short Hash: 9140a67
Timestamp: 2025-11-14 08:07:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:07:28 UTC
Summary: 8 files changed, 3074 insertions(+), 182 deletions(-), net: 2892 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
2806 | 122 | 2684 |
platform/backend/api/inbox.py |
28 | 20 | 8 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
12 | 10 | 2 |
platform/backend/app/agent_engine/langfuse_integration.py |
13 | 8 | 5 |
platform/backend/app/tools/mcp_client.py |
43 | 0 | 43 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
155 | 16 | 139 |
platform/frontend/components/inbox/ActionBoxV2.tsx |
5 | 4 | 1 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
12 | 2 | 10 |
Verify this commit:
git show --stat 9140a677e8bea8600a0b31538fec0f19f70a5763Full Hash: a9e916927d1ac11be61487adca819f95948efa8d
Short Hash: a9e9169
Timestamp: 2025-11-14 08:03:05 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:03:05 UTC
Summary: 4 files changed, 251 insertions(+), 4319 deletions(-), net: -4068 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
77 | 4208 | -4131 |
platform/backend/api/inbox.py |
135 | 84 | 51 |
platform/backend/app/tools/base.py |
4 | 0 | 4 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
35 | 27 | 8 |
Verify this commit:
git show --stat a9e916927d1ac11be61487adca819f95948efa8dFull Hash: ad879afce0b06d41bf65f138ac8c41f14bb55ca5
Short Hash: ad879af
Timestamp: 2025-11-14 08:02:05 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:02:05 UTC
Summary: 2 files changed, 136 insertions(+), 5 deletions(-), net: 131 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
124 | 0 | 124 |
platform/backend/api/inbox.py |
12 | 5 | 7 |
Verify this commit:
git show --stat ad879afce0b06d41bf65f138ac8c41f14bb55ca5Full Hash: d9db51ce78dc1f5122a9f1fe1fe2c31c328587ab
Short Hash: d9db51c
Timestamp: 2025-11-14 08:01:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 16:01:58 UTC
Summary: 12 files changed, 32165 insertions(+), 9130 deletions(-), net: 23035 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
28165 | 2530 | 25635 |
docs/implementation-plan-tool-fixes-ui-polish.md |
1263 | 0 | 1263 |
logs/platform/backend/dev.log |
2352 | 6527 | -4175 |
platform/backend/api/inbox.py |
11 | 7 | 4 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
39 | 32 | 7 |
platform/backend/app/agent_engine/guardrails/enforcer.py |
30 | 0 | 30 |
platform/backend/app/agent_engine/guardrails/tool_registry.py |
12 | 0 | 12 |
platform/backend/app/agent_engine/orchestrator.py |
61 | 9 | 52 |
platform/backend/app/agent_engine/specialized_agents.py |
95 | 9 | 86 |
platform/backend/app/config/__init__.py |
1 | 0 | 1 |
platform/backend/app/tools/arcade_mcp_client.py |
23 | 13 | 10 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
113 | 3 | 110 |
Verify this commit:
git show --stat d9db51ce78dc1f5122a9f1fe1fe2c31c328587abFull Hash: b6b746e343cb817287c9dd096fbaa2986ec9a3d8
Short Hash: b6b746e
Timestamp: 2025-11-14 07:50:29 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:50:29 UTC
Summary: 11 files changed, 18859 insertions(+), 18143 deletions(-), net: 716 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
11003 | 17823 | -6820 |
logs/platform/backend/dev.log |
7515 | 0 | 7515 |
platform/backend/app/agent_engine/guardrails/prompts.py |
6 | 0 | 6 |
platform/backend/app/agent_engine/orchestrator.py |
15 | 50 | -35 |
platform/backend/app/agent_engine/specialized_agents.py |
41 | 221 | -180 |
platform/backend/app/config/__init__.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
148 | 45 | 103 |
platform/frontend/components/inbox/AssistantPane.tsx |
4 | 3 | 1 |
platform/frontend/hooks/useFeatureFlags.tsx |
13 | 0 | 13 |
platform/frontend/lib/action-approval.ts |
111 | 0 | 111 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
Verify this commit:
git show --stat b6b746e343cb817287c9dd096fbaa2986ec9a3d8Full Hash: 8f6c40939adebe6991e63921b1a1fbd20541cb05
Short Hash: 8f6c409
Timestamp: 2025-11-14 07:33:44 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: enable assistant interruption to disable queueing
Summary: 4 files changed, 1029 insertions(+), 331 deletions(-), net: 698 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docker-compose.local.yml |
3 | 0 | 3 |
logs/platform/backend/dev.log |
935 | 193 | 742 |
platform/backend/api/inbox.py |
2 | 69 | -67 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
89 | 69 | 20 |
Verify this commit:
git show --stat 8f6c40939adebe6991e63921b1a1fbd20541cb05Full Hash: 647c290c1b8ebbae689930403c9bd563af4de948
Short Hash: 647c290
Timestamp: 2025-11-14 07:30:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:30:28 UTC
Summary: 3 files changed, 18485 insertions(+), 1219 deletions(-), net: 17266 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
18250 | 559 | 17691 |
logs/platform/backend/dev.log |
195 | 618 | -423 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
40 | 42 | -2 |
Verify this commit:
git show --stat 647c290c1b8ebbae689930403c9bd563af4de948Full Hash: a37091480459d3a87c4334582a55acf848321e4f
Short Hash: a370914
Timestamp: 2025-11-14 07:28:24 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: remove all queueing logic for simpler turn-based flow
Summary: 1 files changed, 14 insertions(+), 7 deletions(-), net: 7 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
14 | 7 | 7 |
Verify this commit:
git show --stat a37091480459d3a87c4334582a55acf848321e4fFull Hash: eac55f80ef67e4c71d6dadf38130a94265133f7b
Short Hash: eac55f8
Timestamp: 2025-11-14 07:28:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:28:20 UTC
Summary: 2 files changed, 615 insertions(+), 731 deletions(-), net: -116 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
560 | 723 | -163 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
55 | 8 | 47 |
Verify this commit:
git show --stat eac55f80ef67e4c71d6dadf38130a94265133f7bFull Hash: 4f9edc108894e9ed3a079c62892c6b2e54fab978
Short Hash: 4f9edc1
Timestamp: 2025-11-14 07:26:22 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:26:22 UTC
Summary: 3 files changed, 1434 insertions(+), 562 deletions(-), net: 872 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
786 | 0 | 786 |
logs/platform/backend/dev.log |
627 | 471 | 156 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
21 | 91 | -70 |
Verify this commit:
git show --stat 4f9edc108894e9ed3a079c62892c6b2e54fab978Full Hash: f8d61fa9d368c3c193a353ad06a645401edc8b84
Short Hash: f8d61fa
Timestamp: 2025-11-14 07:23:42 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: refactor: complete turn-based response handling for agent.response
Summary: 1 files changed, 120 insertions(+), 101 deletions(-), net: 19 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
120 | 101 | 19 |
Verify this commit:
git show --stat f8d61fa9d368c3c193a353ad06a645401edc8b84Full Hash: afc40de692a994fba8df54697a62197377a6ba87
Short Hash: afc40de
Timestamp: 2025-11-14 07:21:33 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:21:32 UTC
Summary: 2 files changed, 508 insertions(+), 534 deletions(-), net: -26 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
501 | 524 | -23 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
7 | 10 | -3 |
Verify this commit:
git show --stat afc40de692a994fba8df54697a62197377a6ba87Full Hash: d197f1968c550b79925c111193403506350cf4b5
Short Hash: d197f19
Timestamp: 2025-11-14 07:19:53 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:19:53 UTC
Summary: 2 files changed, 670 insertions(+), 1177 deletions(-), net: -507 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
0 | 933 | -933 |
logs/platform/backend/dev.log |
670 | 244 | 426 |
Verify this commit:
git show --stat d197f1968c550b79925c111193403506350cf4b5Full Hash: 6b2b94f6da98bbfccb0b61fc3b6e34d12052fabe
Short Hash: 6b2b94f
Timestamp: 2025-11-14 07:18:53 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: resolve agent.response content display issue
Summary: 3 files changed, 1175 insertions(+), 589 deletions(-), net: 586 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
console.logs |
933 | 0 | 933 |
logs/platform/backend/dev.log |
232 | 588 | -356 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
10 | 1 | 9 |
Verify this commit:
git show --stat 6b2b94f6da98bbfccb0b61fc3b6e34d12052fabeFull Hash: 90c30f8ed336384562af48ae6474c3077ddc0348
Short Hash: 90c30f8
Timestamp: 2025-11-14 07:14:17 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:14:17 UTC
Summary: 1 files changed, 89 insertions(+), 0 deletions(-), net: 89 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
89 | 0 | 89 |
Verify this commit:
git show --stat 90c30f8ed336384562af48ae6474c3077ddc0348Full Hash: 0fec48bffa3a89ecef0b354965d88729d6c951ef
Short Hash: 0fec48b
Timestamp: 2025-11-14 07:13:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: resolve AI conversation display issues
Summary: 2 files changed, 445 insertions(+), 626 deletions(-), net: -181 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
440 | 599 | -159 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
5 | 27 | -22 |
Verify this commit:
git show --stat 0fec48bffa3a89ecef0b354965d88729d6c951efFull Hash: 89ca0c0a41badc4edaa8206d57badead8ec34d36
Short Hash: 89ca0c0
Timestamp: 2025-11-14 07:08:34 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 15:08:34 UTC
Summary: 4 files changed, 883 insertions(+), 119 deletions(-), net: 764 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
761 | 22 | 739 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
103 | 96 | 7 |
platform/frontend/components/inbox/MarkdownRenderer.tsx |
3 | 1 | 2 |
platform/frontend/lib/sanitize-assistant-text.ts |
16 | 0 | 16 |
Verify this commit:
git show --stat 89ca0c0a41badc4edaa8206d57badead8ec34d36Full Hash: 67837301beed48e50882be6992af1c4d26041765
Short Hash: 6783730
Timestamp: 2025-11-13 23:08:52 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 07:08:52 UTC
Summary: 60 files changed, 150 insertions(+), 1797 deletions(-), net: -1647 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
MAKEFILE_VS_TASKFILE.md |
1 | 0 | 1 |
MCP_IMPLEMENTATION_STATUS.md |
1 | 0 | 1 |
TASKFILE_MIGRATION.md |
1 | 0 | 1 |
TASKFILE_VERIFICATION.md |
1 | 0 | 1 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
23 | 1772 | -1749 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
1 | 0 | 1 |
platform/backend/app/agent_engine/model_utils.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/utils/name_utils.py |
1 | 0 | 1 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
1 | 0 | 1 |
platform/backend/docs/VERIFICATION_CHECK.md |
1 | 0 | 1 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
30 | 15 | 15 |
platform/frontend/components/ConsoleLoggerInit.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AssistantPane.tsx |
40 | 10 | 30 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/lib/safe-zod-validation.ts |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/task_check_prod_readiness.sh |
1 | 0 | 1 |
scripts/task_ci_setup_secrets.sh |
1 | 0 | 1 |
scripts/task_ci_test.sh |
1 | 0 | 1 |
scripts/task_create_prod_pr.sh |
1 | 0 | 1 |
scripts/task_deploy_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_prod_pr_flow.sh |
1 | 0 | 1 |
scripts/task_deploy_production_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_render.sh |
1 | 0 | 1 |
scripts/task_deploy_render_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_render_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_staging_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_app.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_www.sh |
1 | 0 | 1 |
scripts/task_deploy_website_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_website_full_local.sh |
1 | 0 | 1 |
scripts/task_deploy_website_prod.sh |
1 | 0 | 1 |
scripts/task_import_full.sh |
1 | 0 | 1 |
scripts/task_logs.sh |
1 | 0 | 1 |
scripts/task_mlflow_ui.sh |
1 | 0 | 1 |
scripts/task_posthog_bootstrap.sh |
1 | 0 | 1 |
scripts/task_publish_dev.sh |
1 | 0 | 1 |
scripts/task_sync_platform_env.sh |
1 | 0 | 1 |
scripts/task_sync_render_env.sh |
1 | 0 | 1 |
scripts/task_sync_website_env.sh |
1 | 0 | 1 |
scripts/task_test_render_backend.sh |
1 | 0 | 1 |
scripts/task_verify_integration.sh |
1 | 0 | 1 |
scripts/task_verify_vercel_links.sh |
1 | 0 | 1 |
Verify this commit:
git show --stat 67837301beed48e50882be6992af1c4d26041765Full Hash: 6479b831f596c6ceb5c26116c63ed46b78909c82
Short Hash: 6479b83
Timestamp: 2025-11-13 23:04:02 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 07:04:02 UTC
Summary: 11 files changed, 2232 insertions(+), 136 deletions(-), net: 2096 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
1773 | 16 | 1757 |
platform/backend/api/ai_prompts.py |
63 | 0 | 63 |
platform/backend/api/inbox.py |
74 | 7 | 67 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
45 | 0 | 45 |
platform/backend/app/agent_engine/specialized_agents.py |
46 | 4 | 42 |
platform/backend/app/agent_engine/triage_agent.py |
2 | 2 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
159 | 96 | 63 |
platform/frontend/components/inbox/AssistantPane.tsx |
1 | 1 | 0 |
platform/frontend/lib/api-client.ts |
6 | 6 | 0 |
platform/frontend/lib/logger.ts |
52 | 3 | 49 |
scripts/previous_task_portal.sh |
11 | 1 | 10 |
Verify this commit:
git show --stat 6479b831f596c6ceb5c26116c63ed46b78909c82Full Hash: 81064fa5d0651275343a6556217eac0832bf9fad
Short Hash: 81064fa
Timestamp: 2025-11-13 22:46:45 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:46:45 UTC
Summary: 2 files changed, 113 insertions(+), 2 deletions(-), net: 111 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
2 | 2 | 0 |
logs/platform/backend/dev.log |
111 | 0 | 111 |
Verify this commit:
git show --stat 81064fa5d0651275343a6556217eac0832bf9fadFull Hash: f09a1c033c184bfed7a5dec706684c3405a7a31f
Short Hash: f09a1c0
Timestamp: 2025-11-13 22:45:41 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:45:41 UTC
Summary: 2 files changed, 13 insertions(+), 119 deletions(-), net: -106 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
0 | 118 | -118 |
scripts/task_deploy_local.sh |
13 | 1 | 12 |
Verify this commit:
git show --stat f09a1c033c184bfed7a5dec706684c3405a7a31fFull Hash: 8ac50368aaed331184c80bc0d93219a1d582c028
Short Hash: 8ac5036
Timestamp: 2025-11-13 22:45:10 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:45:10 UTC
Summary: 2 files changed, 59 insertions(+), 28 deletions(-), net: 31 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
22 | 19 | 3 |
scripts/task_deploy_local.sh |
37 | 9 | 28 |
Verify this commit:
git show --stat 8ac50368aaed331184c80bc0d93219a1d582c028Full Hash: 2ddd35e7296683eb8df5385380149a6c9ab2915c
Short Hash: 2ddd35e
Timestamp: 2025-11-13 22:43:31 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:43:30 UTC
Summary: 2 files changed, 126 insertions(+), 16 deletions(-), net: 110 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
115 | 0 | 115 |
scripts/task_deploy_local.sh |
11 | 16 | -5 |
Verify this commit:
git show --stat 2ddd35e7296683eb8df5385380149a6c9ab2915cFull Hash: 947d601d88a582aa649206971cfbdeeaa5967c4a
Short Hash: 947d601
Timestamp: 2025-11-13 22:39:44 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:39:44 UTC
Summary: 3 files changed, 70 insertions(+), 39 deletions(-), net: 31 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/AssistantInput.tsx |
15 | 10 | 5 |
platform/frontend/components/inbox/AssistantPane.tsx |
10 | 2 | 8 |
scripts/task_deploy_local.sh |
45 | 27 | 18 |
Verify this commit:
git show --stat 947d601d88a582aa649206971cfbdeeaa5967c4aFull Hash: 1ce4521873e35bc9936948b9f74f581143cbc36c
Short Hash: 1ce4521
Timestamp: 2025-11-13 22:37:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:37:12 UTC
Summary: 3 files changed, 21 insertions(+), 797 deletions(-), net: -776 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
1 | 0 | 1 |
logs/platform/backend/dev.log |
0 | 780 | -780 |
scripts/task_deploy_local.sh |
20 | 17 | 3 |
Verify this commit:
git show --stat 1ce4521873e35bc9936948b9f74f581143cbc36cFull Hash: 174fe719b3a9c32036fdb44e59671fc4993b3f4d
Short Hash: 174fe71
Timestamp: 2025-11-13 22:36:10 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:36:10 UTC
Summary: 3 files changed, 520 insertions(+), 608 deletions(-), net: -88 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
1 | 1 | 0 |
logs/platform/backend/dev.log |
513 | 606 | -93 |
scripts/task_deploy_local.sh |
6 | 1 | 5 |
Verify this commit:
git show --stat 174fe719b3a9c32036fdb44e59671fc4993b3f4dFull Hash: 54601693b484d9ae8e464121c0c6061e0ef5d6fd
Short Hash: 5460169
Timestamp: 2025-11-13 22:33:52 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:33:52 UTC
Summary: 2 files changed, 786 insertions(+), 107 deletions(-), net: 679 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
7 | 0 | 7 |
logs/platform/backend/dev.log |
779 | 107 | 672 |
Verify this commit:
git show --stat 54601693b484d9ae8e464121c0c6061e0ef5d6fdFull Hash: 6224434c1d56b1b9e72c0227e192813dbdae0afb
Short Hash: 6224434
Timestamp: 2025-11-13 22:32:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:32:04 UTC
Summary: 1 files changed, 108 insertions(+), 108 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
108 | 108 | 0 |
Verify this commit:
git show --stat 6224434c1d56b1b9e72c0227e192813dbdae0afbFull Hash: 1fb95550a7d5c7aed8ebc6bc518b40c5de0a9073
Short Hash: 1fb9555
Timestamp: 2025-11-13 22:31:15 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:31:15 UTC
Summary: 2 files changed, 48 insertions(+), 4 deletions(-), net: 44 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/anthropic_client_adapter.py |
35 | 4 | 31 |
scripts/task_deploy_local.sh |
13 | 0 | 13 |
Verify this commit:
git show --stat 1fb95550a7d5c7aed8ebc6bc518b40c5de0a9073Full Hash: a1eef567c6185f75f547ea70644f2a87b1105385
Short Hash: a1eef56
Timestamp: 2025-11-13 22:30:09 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:30:09 UTC
Summary: 5 files changed, 153 insertions(+), 852 deletions(-), net: -699 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
110 | 835 | -725 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
1 | 0 | 1 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
19 | 2 | 17 |
platform/frontend/components/inbox/AssistantPane.tsx |
19 | 9 | 10 |
platform/frontend/components/inbox/BehindTheScenes.tsx |
4 | 6 | -2 |
Verify this commit:
git show --stat a1eef567c6185f75f547ea70644f2a87b1105385Full Hash: 16fde06230d291b63ff1eb161ed88d96e22ab49d
Short Hash: 16fde06
Timestamp: 2025-11-13 22:26:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:26:58 UTC
Summary: 3 files changed, 300 insertions(+), 550 deletions(-), net: -250 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
1 | 0 | 1 |
logs/platform/backend/dev.log |
252 | 550 | -298 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
47 | 0 | 47 |
Verify this commit:
git show --stat 16fde06230d291b63ff1eb161ed88d96e22ab49dFull Hash: d76f9b067e657b872ea2116951bf1317b707bfa7
Short Hash: d76f9b0
Timestamp: 2025-11-13 22:25:15 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: docs(observability): add comprehensive Langfuse spec documenting all issues and fixes
Summary: 1 files changed, 761 insertions(+), 0 deletions(-), net: 761 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/observability/LANGFUSE_SPEC.md |
761 | 0 | 761 |
Verify this commit:
git show --stat d76f9b067e657b872ea2116951bf1317b707bfa7Full Hash: e25f1c7841ae8740758cab78d0616e84a0a4b504
Short Hash: e25f1c7
Timestamp: 2025-11-13 22:22:24 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: docs(observability): add comprehensive Langfuse integration documentation
Summary: 1 files changed, 296 insertions(+), 0 deletions(-), net: 296 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/observability/LANGFUSE_INTEGRATION.md |
296 | 0 | 296 |
Verify this commit:
git show --stat e25f1c7841ae8740758cab78d0616e84a0a4b504Full Hash: da3171b68e7efefecc307545c001d7a76ee81285
Short Hash: da3171b
Timestamp: 2025-11-13 22:21:38 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:21:38 UTC
Summary: 3 files changed, 1015 insertions(+), 295 deletions(-), net: 720 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
911 | 275 | 636 |
platform/backend/app/agent_engine/langfuse_integration.py |
31 | 14 | 17 |
scripts/task_deploy_local.sh |
73 | 6 | 67 |
Verify this commit:
git show --stat da3171b68e7efefecc307545c001d7a76ee81285Full Hash: 222403b1f9c68e4722c95a979e8a8eb4ccaed08a
Short Hash: 222403b
Timestamp: 2025-11-13 22:16:26 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:16:26 UTC
Summary: 10 files changed, 1042 insertions(+), 392 deletions(-), net: 650 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
3 | 3 | 0 |
logs/platform/backend/dev.log |
540 | 39 | 501 |
platform/backend/api/inbox.py |
28 | 26 | 2 |
platform/backend/app/__init__.py |
21 | 0 | 21 |
platform/backend/app/agent_engine/langfuse_integration.py |
73 | 14 | 59 |
platform/backend/app/config/__init__.py |
4 | 1 | 3 |
platform/backend/app/observability/langfuse_integration.py |
8 | 8 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
7 | 5 | 2 |
platform/frontend/lib/console-logger.ts |
8 | 7 | 1 |
platform/frontend/lib/enhanced-logger.ts |
350 | 289 | 61 |
Verify this commit:
git show --stat 222403b1f9c68e4722c95a979e8a8eb4ccaed08aFull Hash: b150af069bc0044f55cc97b9bfa72dda216148f8
Short Hash: b150af0
Timestamp: 2025-11-13 22:03:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 06:03:58 UTC
Summary: 3 files changed, 1441 insertions(+), 181 deletions(-), net: 1260 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
LANGFUSE_REVIEW_QUERY.md |
1313 | 0 | 1313 |
logs/platform/backend/dev.log |
44 | 152 | -108 |
platform/frontend/lib/enhanced-logger.ts |
84 | 29 | 55 |
Verify this commit:
git show --stat b150af069bc0044f55cc97b9bfa72dda216148f8Full Hash: 12143a4d4da4d5025c09ded963f3f2631c94f4bf
Short Hash: 12143a4
Timestamp: 2025-11-13 21:20:36 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 05:20:36 UTC
Summary: 1 files changed, 153 insertions(+), 17 deletions(-), net: 136 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
153 | 17 | 136 |
Verify this commit:
git show --stat 12143a4d4da4d5025c09ded963f3f2631c94f4bfFull Hash: dbc685f775f12cf265f725286f392848bd141c17
Short Hash: dbc685f
Timestamp: 2025-11-13 21:15:06 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 05:15:06 UTC
Summary: 1 files changed, 12 insertions(+), 203 deletions(-), net: -191 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
12 | 203 | -191 |
Verify this commit:
git show --stat dbc685f775f12cf265f725286f392848bd141c17Full Hash: 57438795e8fadec1a31ebd8efa67570c045ec145
Short Hash: 5743879
Timestamp: 2025-11-13 21:12:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat(logging): enhance console logging with Pino and enable Langfuse
Summary: 8 files changed, 576 insertions(+), 38 deletions(-), net: 538 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
125 | 3 | 122 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
60 | 10 | 50 |
platform/backend/app/agent_engine/orchestrator.py |
47 | 1 | 46 |
platform/backend/app/config/__init__.py |
2 | 2 | 0 |
platform/backend/app/observability/langfuse_integration.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
26 | 19 | 7 |
platform/frontend/lib/console-logger.ts |
30 | 2 | 28 |
platform/frontend/lib/enhanced-logger.ts |
285 | 0 | 285 |
Verify this commit:
git show --stat 57438795e8fadec1a31ebd8efa67570c045ec145Full Hash: 83654414eb9392759e2cd2bef6a126ff5ea79540
Short Hash: 8365441
Timestamp: 2025-11-13 21:06:06 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 05:06:06 UTC
Summary: 1 files changed, 6 insertions(+), 2 deletions(-), net: 4 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
6 | 2 | 4 |
Verify this commit:
git show --stat 83654414eb9392759e2cd2bef6a126ff5ea79540Full Hash: e6694fc7768215f5b4f34d381c262821c336e660
Short Hash: e6694fc
Timestamp: 2025-11-13 21:02:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 05:02:24 UTC
Summary: 1 files changed, 204 insertions(+), 47 deletions(-), net: 157 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
204 | 47 | 157 |
Verify this commit:
git show --stat e6694fc7768215f5b4f34d381c262821c336e660Full Hash: e6d169fc5570b8876226f22fbd0493d0ce02f2f7
Short Hash: e6d169f
Timestamp: 2025-11-13 20:51:43 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 04:51:43 UTC
Summary: 6 files changed, 433 insertions(+), 473 deletions(-), net: -40 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
46 | 460 | -414 |
platform/backend/app/agent_engine/langfuse_integration.py |
130 | 11 | 119 |
platform/backend/app/agent_engine/specialized_agents.py |
207 | 0 | 207 |
platform/backend/app/config/__init__.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
13 | 1 | 12 |
scripts/task_deploy_local.sh |
36 | 0 | 36 |
Verify this commit:
git show --stat e6d169fc5570b8876226f22fbd0493d0ce02f2f7Full Hash: 86b7ae70c50744883dc005a036350edb37d15a3a
Short Hash: 86b7ae7
Timestamp: 2025-11-13 20:15:52 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 04:15:52 UTC
Summary: 7 files changed, 275 insertions(+), 278 deletions(-), net: -3 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
README.md |
2 | 2 | 0 |
docker-compose.local.yml |
1 | 1 | 0 |
logs/platform/backend/dev.log |
264 | 268 | -4 |
platform/backend/app/agent_engine/langfuse_integration.py |
3 | 3 | 0 |
platform/backend/app/config/__init__.py |
1 | 1 | 0 |
platform/backend/app/observability/langfuse_integration.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
3 | 2 | 1 |
Verify this commit:
git show --stat 86b7ae70c50744883dc005a036350edb37d15a3aFull Hash: 64a086191404d7b5930d39c17b8d6817624af062
Short Hash: 64a0861
Timestamp: 2025-11-13 20:11:34 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 04:11:34 UTC
Summary: 5 files changed, 70 insertions(+), 10 deletions(-), net: 60 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docker-compose.local.yml |
0 | 1 | -1 |
platform/backend/api/inbox.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
1 | 1 | 0 |
platform/backend/app/agent_engine/langfuse_integration.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
67 | 7 | 60 |
Verify this commit:
git show --stat 64a086191404d7b5930d39c17b8d6817624af062Full Hash: e6d8f3accb32f77d34ab84b3c560e341e1631467
Short Hash: e6d8f3a
Timestamp: 2025-11-13 20:09:15 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 04:09:15 UTC
Summary: 12 files changed, 1027 insertions(+), 198 deletions(-), net: 829 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
README.md |
34 | 0 | 34 |
docker-compose.local.yml |
38 | 4 | 34 |
logs/platform/backend/dev.log |
509 | 44 | 465 |
platform/backend/api/inbox.py |
88 | 79 | 9 |
platform/backend/app/agent_engine/langfuse_integration.py |
10 | 8 | 2 |
platform/backend/app/agent_engine/specialized_agents.py |
34 | 9 | 25 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
16 | 7 | 9 |
platform/frontend/components/inbox/AssistantPane.tsx |
9 | 4 | 5 |
platform/frontend/lib/api-client.ts |
75 | 29 | 46 |
platform/frontend/lib/safe-zod-validation.ts |
81 | 0 | 81 |
platform/frontend/next.config.js |
51 | 8 | 43 |
scripts/task_deploy_local.sh |
82 | 6 | 76 |
Verify this commit:
git show --stat e6d8f3accb32f77d34ab84b3c560e341e1631467Full Hash: f178f7876b8c3c91c330d57c45fc56fdcac75b9e
Short Hash: f178f78
Timestamp: 2025-11-13 19:58:15 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 03:58:14 UTC
Summary: 76 files changed, 668 insertions(+), 925 deletions(-), net: -257 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
23 | 3 | 20 |
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
MAKEFILE_VS_TASKFILE.md |
1 | 0 | 1 |
MCP_IMPLEMENTATION_STATUS.md |
1 | 0 | 1 |
TASKFILE_MIGRATION.md |
1 | 0 | 1 |
TASKFILE_VERIFICATION.md |
1 | 0 | 1 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
43 | 676 | -633 |
platform/backend/api/inbox.py |
20 | 35 | -15 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
1 | 0 | 1 |
platform/backend/app/agent_engine/model_utils.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/specialized_agents.py |
256 | 114 | 142 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/config/__init__.py |
4 | 0 | 4 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/prompts/gmail_strategy.py |
37 | 19 | 18 |
platform/backend/app/prompts/single_agent_controller.py |
13 | 7 | 6 |
platform/backend/app/utils/name_utils.py |
1 | 0 | 1 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
1 | 0 | 1 |
platform/backend/docs/VERIFICATION_CHECK.md |
1 | 0 | 1 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1 | 1 | 0 |
platform/frontend/components/ConsoleLoggerInit.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AssistantPane.tsx |
47 | 31 | 16 |
platform/frontend/components/inbox/BehindTheScenes.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ComposeButton.tsx |
12 | 3 | 9 |
platform/frontend/components/inbox/ComposeModal.tsx |
10 | 1 | 9 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
11 | 5 | 6 |
platform/frontend/components/inbox/InboxPlanB.tsx |
24 | 13 | 11 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
13 | 4 | 9 |
platform/frontend/components/inbox/ThreadRow.tsx |
20 | 13 | 7 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/progress.tsx |
29 | 0 | 29 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/console-logger.ts |
1 | 0 | 1 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/next.config.js |
46 | 0 | 46 |
platform/frontend/package.json |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/task_check_prod_readiness.sh |
1 | 0 | 1 |
scripts/task_ci_setup_secrets.sh |
1 | 0 | 1 |
scripts/task_ci_test.sh |
1 | 0 | 1 |
scripts/task_create_prod_pr.sh |
1 | 0 | 1 |
scripts/task_deploy_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_prod_pr_flow.sh |
1 | 0 | 1 |
scripts/task_deploy_production_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_render.sh |
1 | 0 | 1 |
scripts/task_deploy_render_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_render_prod.sh |
1 | 0 | 1 |
scripts/task_deploy_staging_ci.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_app.sh |
1 | 0 | 1 |
scripts/task_deploy_vercel_www.sh |
1 | 0 | 1 |
scripts/task_deploy_website_dev.sh |
1 | 0 | 1 |
scripts/task_deploy_website_full_local.sh |
1 | 0 | 1 |
scripts/task_deploy_website_prod.sh |
1 | 0 | 1 |
scripts/task_import_full.sh |
1 | 0 | 1 |
scripts/task_logs.sh |
1 | 0 | 1 |
scripts/task_mlflow_ui.sh |
1 | 0 | 1 |
scripts/task_posthog_bootstrap.sh |
1 | 0 | 1 |
scripts/task_publish_dev.sh |
1 | 0 | 1 |
scripts/task_sync_platform_env.sh |
1 | 0 | 1 |
scripts/task_sync_render_env.sh |
1 | 0 | 1 |
scripts/task_sync_website_env.sh |
1 | 0 | 1 |
scripts/task_test_render_backend.sh |
1 | 0 | 1 |
scripts/task_verify_integration.sh |
1 | 0 | 1 |
scripts/task_verify_vercel_links.sh |
1 | 0 | 1 |
Verify this commit:
git show --stat f178f7876b8c3c91c330d57c45fc56fdcac75b9eFull Hash: 5bf0d18794bbbc5672257c073bb6e295bdd91614
Short Hash: 5bf0d18
Timestamp: 2025-11-13 19:44:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 03:44:57 UTC
Summary: 2 files changed, 8 insertions(+), 2 deletions(-), net: 6 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/tests/setup.ts |
1 | 2 | -1 |
platform/frontend/vitest-env.d.ts |
7 | 0 | 7 |
Verify this commit:
git show --stat 5bf0d18794bbbc5672257c073bb6e295bdd91614Full Hash: 9a8916f815edc81fd9d3d296a5327d7ede35829c
Short Hash: 9a8916f
Timestamp: 2025-11-13 19:44:40 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 03:44:40 UTC
Summary: 19 files changed, 1394 insertions(+), 55 deletions(-), net: 1339 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docker-compose.local.yml |
3 | 3 | 0 |
logs/platform/backend/dev.log |
678 | 1 | 677 |
platform/backend/api/auth.py |
12 | 0 | 12 |
platform/backend/api/inbox.py |
67 | 4 | 63 |
platform/backend/app/agent_engine/anthropic_client.py |
2 | 0 | 2 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
183 | 10 | 173 |
platform/backend/app/agent_engine/langfuse_integration.py |
77 | 6 | 71 |
platform/backend/app/agent_engine/observability_sanitizer.py |
30 | 4 | 26 |
platform/backend/app/agent_engine/token_budget_tracker.py |
1 | 1 | 0 |
platform/backend/app/observability/logger.py |
11 | 2 | 9 |
platform/backend/app/observability/processors.py |
18 | 0 | 18 |
platform/backend/app/prompts/inbox_assistant.py |
2 | 0 | 2 |
platform/backend/main.py |
33 | 0 | 33 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
10 | 1 | 9 |
platform/frontend/components/inbox/AssistantPane.tsx |
212 | 4 | 208 |
platform/frontend/hooks/useAvatar.ts |
16 | 13 | 3 |
platform/frontend/lib/api-client.ts |
10 | 5 | 5 |
platform/frontend/tsconfig.json |
5 | 1 | 4 |
scripts/task_deploy_local.sh |
24 | 0 | 24 |
Verify this commit:
git show --stat 9a8916f815edc81fd9d3d296a5327d7ede35829cFull Hash: 63cc707452f352f4bceba443cbd21fe1ac399977
Short Hash: 63cc707
Timestamp: 2025-11-13 19:18:27 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 03:18:27 UTC
Summary: 49 files changed, 2599 insertions(+), 11675 deletions(-), net: -9076 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
ARCADE_GMAIL_AUDIT.md |
132 | 0 | 132 |
Taskfile.yml |
6 | 0 | 6 |
agents.md |
21 | 0 | 21 |
logs/platform/backend/dev.log |
1 | 101 | -100 |
platform/backend/api/ai_prompts.py |
1 | 1 | 0 |
platform/backend/api/arcade.py |
0 | 103 | -103 |
platform/backend/api/automations.py |
6 | 12 | -6 |
platform/backend/api/calendar.py |
3 | 10 | -7 |
platform/backend/api/custom_integrations.py |
13 | 101 | -88 |
platform/backend/api/inbox.py |
336 | 92 | 244 |
platform/backend/app/agent_engine/_backup_agents_sdk/README.md |
49 | 0 | 49 |
platform/backend/app/agent_engine/_backup_litellm/README.md |
5 | 0 | 5 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
160 | 8814 | -8654 |
platform/backend/app/agent_engine/anthropic_client.py |
152 | 15 | 137 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
90 | 53 | 37 |
platform/backend/app/agent_engine/guardrails/prompts.py |
6 | 3 | 3 |
platform/backend/app/agent_engine/orchestrator.py |
9 | 7 | 2 |
platform/backend/app/agent_engine/specialized_agents.py |
207 | 157 | 50 |
platform/backend/app/agent_engine/token_budget_tracker.py |
15 | 76 | -61 |
platform/backend/app/agent_engine/writing_style_analyzer.py |
0 | 1 | -1 |
platform/backend/app/automation/engine.py |
106 | 67 | 39 |
platform/backend/app/config/__init__.py |
11 | 1 | 10 |
platform/backend/app/observability/llm_usage_tracker.py |
19 | 516 | -497 |
platform/backend/app/observability/structlog_setup.py |
36 | 139 | -103 |
platform/backend/app/observability/tracer.py |
1 | 1 | 0 |
platform/backend/app/prompts/inbox_assistant.py |
8 | 3 | 5 |
platform/backend/app/services/ai_memory_service.py |
1 | 1 | 0 |
platform/backend/app/services/logging/collector.py |
2 | 2 | 0 |
platform/backend/app/tools/arcade_dynamic.py |
0 | 1233 | -1233 |
platform/backend/app/tools/arcade_mcp_client.py |
21 | 3 | 18 |
platform/backend/app/tools/custom_toolkits.py |
4 | 3 | 1 |
platform/backend/app/tools/deep_context.py |
3 | 1 | 2 |
platform/backend/app/tools/memory_tool.py |
7 | 3 | 4 |
platform/backend/app/utils/name_utils.py |
28 | 0 | 28 |
platform/backend/celery_app.py |
17 | 1 | 16 |
platform/backend/docs/ARCADE_DYNAMIC_REMOVAL_SUMMARY.md |
300 | 0 | 300 |
platform/backend/docs/VERIFICATION_CHECK.md |
215 | 0 | 215 |
platform/backend/main.py |
49 | 9 | 40 |
platform/backend/scripts/stream_langfuse_logs.py |
16 | 0 | 16 |
platform/backend/test_integration_discovery.py |
34 | 95 | -61 |
platform/backend/test_integration_smoke.py |
6 | 2 | 4 |
platform/backend/test_permissions_fixed.py |
4 | 1 | 3 |
platform/backend/tests/regression/test_oauth_flow.py |
11 | 1 | 10 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
30 | 14 | 16 |
platform/frontend/hooks/useAvatar.ts |
14 | 0 | 14 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
scripts/previous_task_portal.sh |
108 | 0 | 108 |
scripts/task_deploy_local.sh |
198 | 27 | 171 |
scripts/task_snapshot_logs.sh |
136 | 6 | 130 |
Verify this commit:
git show --stat 63cc707452f352f4bceba443cbd21fe1ac399977Full Hash: 19b83ee47371f63a92df75b19f17f3c9c43ca51a
Short Hash: 19b83ee
Timestamp: 2025-11-13 17:37:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 01:37:20 UTC
Summary: 34 files changed, 2679 insertions(+), 853 deletions(-), net: 1826 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/pipeline.yml |
5 | 0 | 5 |
.buildkite/scripts/ensure_langfuse_dev_only.sh |
43 | 0 | 43 |
agents.md |
8 | 3 | 5 |
logs/platform/backend/dev.log |
55 | 220 | -165 |
my_server/pyproject.toml |
0 | 1 | -1 |
my_server/src/my_server/server.py |
9 | 60 | -51 |
platform/backend/api/arcade.py |
213 | 0 | 213 |
platform/backend/api/auth.py |
4 | 2 | 2 |
platform/backend/app/agent_engine/_backup_litellm/README.md |
39 | 0 | 39 |
platform/backend/app/agent_engine/_backup_litellm/SIMPLIFICATION_SUMMARY.md |
83 | 0 | 83 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
6 | 7 | -1 |
platform/backend/app/agent_engine/anthropic_client.py |
275 | 372 | -97 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
149 | 5 | 144 |
platform/backend/app/agent_engine/guardrails/enforcer.py |
14 | 0 | 14 |
platform/backend/app/agent_engine/model_utils.py |
35 | 0 | 35 |
platform/backend/app/agent_engine/specialized_agents.py |
189 | 6 | 183 |
platform/backend/app/auth/jwks.py |
3 | 2 | 1 |
platform/backend/app/config/__init__.py |
20 | 0 | 20 |
platform/backend/app/tools/arcade_mcp_client.py |
150 | 1 | 149 |
platform/backend/app/tools/base.py |
2 | 1 | 1 |
platform/backend/scripts/stream_langfuse_logs.py |
749 | 0 | 749 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
208 | 28 | 180 |
platform/frontend/components/inbox/AssistantPane.tsx |
21 | 13 | 8 |
platform/frontend/components/inbox/AvatarMenu.tsx |
12 | 1 | 11 |
platform/frontend/components/inbox/ComposeButton.tsx |
4 | 4 | 0 |
platform/frontend/components/inbox/ConciergeGreeting.tsx |
1 | 2 | -1 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/HeaderControlGutterLeft.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/HelpToggleButton.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/ThinkingIndicator.tsx |
0 | 1 | -1 |
platform/frontend/components/inbox/ThinkingOverlay.tsx |
0 | 3 | -3 |
platform/frontend/lib/console-logger.ts |
1 | 1 | 0 |
scripts/task_deploy_local.sh |
224 | 85 | 139 |
scripts/task_snapshot_logs.sh |
150 | 28 | 122 |
Verify this commit:
git show --stat 19b83ee47371f63a92df75b19f17f3c9c43ca51aFull Hash: c6e98b6d89444c246448f975814d0b099bd59a4f
Short Hash: c6e98b6
Timestamp: 2025-11-13 16:10:13 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 00:10:13 UTC
Summary: 6 files changed, 240 insertions(+), 94 deletions(-), net: 146 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.task/checksum/install-platform-backend |
1 | 0 | 1 |
logs/platform/backend/dev.log |
219 | 91 | 128 |
platform/backend/.task/install.ok |
1 | 0 | 1 |
platform/backend/api/errors.py |
17 | 0 | 17 |
platform/frontend/lib/console-logger.ts |
1 | 2 | -1 |
scripts/task_deploy_local.sh |
1 | 1 | 0 |
Verify this commit:
git show --stat c6e98b6d89444c246448f975814d0b099bd59a4fFull Hash: afa85aa8d513560662538ee730fcc5d6573f71d8
Short Hash: afa85aa
Timestamp: 2025-11-13 16:06:17 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-14 00:06:17 UTC
Summary: 8 files changed, 823 insertions(+), 1010 deletions(-), net: -187 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
AUDIT_FEEDBACK_APPLIED.md |
98 | 0 | 98 |
TURN_BASED_AUDIT.md |
252 | 0 | 252 |
agents.md |
2 | 0 | 2 |
logs/platform/backend/dev.log |
139 | 0 | 139 |
platform/backend/app/agent_engine/anthropic_client.py |
87 | 424 | -337 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
166 | 530 | -364 |
platform/backend/app/agent_engine/transcript_manager.py |
57 | 27 | 30 |
scripts/task_kill_ports.sh |
22 | 29 | -7 |
Verify this commit:
git show --stat afa85aa8d513560662538ee730fcc5d6573f71d8Full Hash: f72f9b243dfac230e8d33ae2aa3a3f365ecf865b
Short Hash: f72f9b2
Timestamp: 2025-11-13 15:34:50 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 23:34:50 UTC
Summary: 33 files changed, 851 insertions(+), 811 deletions(-), net: 40 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
109 | 0 | 109 |
agents.md |
18 | 0 | 18 |
docs/BERTHIER_BRAND_DESIGN_DOC.md |
3 | 1 | 2 |
docs/media/branding/quill-tip-insignia-dynamic.svg |
18 | 0 | 18 |
logs/platform/backend/dev.log |
0 | 545 | -545 |
platform/backend/api/auth.py |
14 | 2 | 12 |
platform/backend/api/inbox.py |
2 | 2 | 0 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
13 | 49 | -36 |
platform/backend/app/agent_engine/anthropic_client.py |
85 | 12 | 73 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
141 | 31 | 110 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
3 | 2 | 1 |
platform/backend/app/agent_engine/thinking_utils.py |
20 | 21 | -1 |
platform/backend/app/agent_engine/transcript_manager.py |
72 | 10 | 62 |
platform/backend/app/auth/jwks.py |
3 | 2 | 1 |
platform/backend/app/config/__init__.py |
12 | 1 | 11 |
platform/backend/app/models/__init__.py |
7 | 0 | 7 |
platform/backend/app/models/email_body.py |
1 | 32 | -31 |
platform/backend/app/models/email_relationships.py |
39 | 0 | 39 |
platform/backend/app/models/inbox_email.py |
1 | 30 | -29 |
platform/backend/app/observability/structlog_setup.py |
4 | 3 | 1 |
platform/backend/app/services/conversation_service.py |
20 | 1 | 19 |
platform/backend/app/services/gmail_api.py |
1 | 1 | 0 |
platform/backend/app/services/inbox_sync_service.py |
1 | 1 | 0 |
platform/backend/migrations/101_purge_all_agent_transcripts.sql |
36 | 0 | 36 |
platform/backend/tests/regression/test_no_temp_logs.py |
8 | 0 | 8 |
platform/frontend/components/icons/BrandMarkIcon.tsx |
58 | 0 | 58 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
2 | 2 | 0 |
platform/frontend/public/branding/quill-tip-insignia.svg |
18 | 0 | 18 |
platform/frontend/public/favicon-dev.svg |
17 | 24 | -7 |
platform/frontend/public/favicon-local.svg |
17 | 24 | -7 |
platform/frontend/public/favicon.svg |
17 | 13 | 4 |
scripts/task_deploy_local.sh |
39 | 2 | 37 |
scripts/task_snapshot_logs.sh |
52 | 0 | 52 |
Verify this commit:
git show --stat f72f9b243dfac230e8d33ae2aa3a3f365ecf865bFull Hash: 7d21a0c9a5a0e6e14dc04977f491cc95824c1a94
Short Hash: 7d21a0c
Timestamp: 2025-11-13 14:49:00 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:49:00 UTC
Summary: 5 files changed, 353 insertions(+), 197 deletions(-), net: 156 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
341 | 179 | 162 |
platform/backend/api/inbox.py |
5 | 5 | 0 |
platform/backend/app/agent_engine/anthropic_client.py |
3 | 1 | 2 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
3 | 11 | -8 |
platform/backend/tests/regression/test_no_temp_logs.py |
1 | 1 | 0 |
Verify this commit:
git show --stat 7d21a0c9a5a0e6e14dc04977f491cc95824c1a94Full Hash: 9cfa883c57d24356feb5e719072c7db7ecf2e0f8
Short Hash: 9cfa883
Timestamp: 2025-11-13 14:44:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:44:55 UTC
Summary: 1 files changed, 64 insertions(+), 0 deletions(-), net: 64 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
64 | 0 | 64 |
Verify this commit:
git show --stat 9cfa883c57d24356feb5e719072c7db7ecf2e0f8Full Hash: 4dfdcb9fe77a4b13a8b0f834afd5a4106c959cee
Short Hash: 4dfdcb9
Timestamp: 2025-11-13 14:44:44 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:44:44 UTC
Summary: 2 files changed, 144 insertions(+), 100 deletions(-), net: 44 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
141 | 98 | 43 |
platform/backend/app/services/email_template_service.py |
3 | 2 | 1 |
Verify this commit:
git show --stat 4dfdcb9fe77a4b13a8b0f834afd5a4106c959ceeFull Hash: d6e6a2f2f33d3af4e373f901a3136ff26e43a3f8
Short Hash: d6e6a2f
Timestamp: 2025-11-13 14:42:46 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:42:46 UTC
Summary: 11 files changed, 1160 insertions(+), 70 deletions(-), net: 1090 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
design-assets/logo-demo.html |
304 | 0 | 304 |
design-assets/quill-tip-insignia-depth.svg |
30 | 0 | 30 |
design-assets/quill-tip-insignia-dynamic.svg |
20 | 0 | 20 |
design-assets/quill-tip-insignia-final.svg |
19 | 0 | 19 |
logo-implementation.html |
340 | 0 | 340 |
logs/platform/backend/dev.log |
234 | 11 | 223 |
platform/backend/app/agent_engine/anthropic_client.py |
47 | 4 | 43 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
107 | 36 | 71 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
12 | 9 | 3 |
platform/backend/app/models/email_body.py |
28 | 7 | 21 |
platform/backend/app/models/inbox_email.py |
19 | 3 | 16 |
Verify this commit:
git show --stat d6e6a2f2f33d3af4e373f901a3136ff26e43a3f8Full Hash: 905a14db0f3b861ed1c11d2de1eca8923978875f
Short Hash: 905a14d
Timestamp: 2025-11-13 14:33:33 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:33:33 UTC
Summary: 18 files changed, 178 insertions(+), 105943 deletions(-), net: -105765 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
6 | 366 | -360 |
platform/backend/app/agent_engine/anthropic_client.py |
21 | 11 | 10 |
platform/backend/app/agent_engine/thinking_utils.py |
18 | 2 | 16 |
platform/backend/logs/app.log.1 |
0 | 2139 | -2139 |
platform/backend/logs/app.log.2 |
0 | 59 | -59 |
platform/backend/logs/app.log.2025-11-08 |
0 | 7035 | -7035 |
platform/backend/logs/app.log.3 |
0 | 21557 | -21557 |
platform/backend/logs/app.log.4 |
0 | 31324 | -31324 |
platform/backend/logs/app.log.5 |
0 | 20 | -20 |
platform/backend/logs/errors.log.1 |
0 | 16625 | -16625 |
platform/backend/logs/errors.log.2 |
0 | 25987 | -25987 |
platform/backend/logs/errors.log.3 |
0 | 133 | -133 |
platform/backend/logs/errors.log.4 |
0 | 38 | -38 |
platform/backend/logs/errors.log.5 |
0 | 647 | -647 |
platform/backend/logs/platform/backend/dev.log |
0 | 0 | 0 |
quill-tip-insignia-dynamic.svg |
50 | 0 | 50 |
quill-tip-insignia-final.svg |
36 | 0 | 36 |
quill-tip-insignia.svg |
47 | 0 | 47 |
Verify this commit:
git show --stat 905a14db0f3b861ed1c11d2de1eca8923978875fFull Hash: fb2ac72bc34a4ae0830b92ec5e6b4498aadea5c8
Short Hash: fb2ac72
Timestamp: 2025-11-13 14:27:05 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:27:05 UTC
Summary: 23 files changed, 453 insertions(+), 418 deletions(-), net: 35 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
365 | 105 | 260 |
platform/backend/api/inbox.py |
5 | 5 | 0 |
platform/backend/app/agent_engine/anthropic_client.py |
40 | 8 | 32 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
34 | 4 | 30 |
platform/backend/app/agent_engine/session_manager.py |
3 | 3 | 0 |
platform/backend/app/agent_engine/thinking_utils.py |
6 | 4 | 2 |
platform/backend/logs/query_embedding_20251112_165336.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165403.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165409.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165436.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165441.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165844.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_165945.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170132.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170234.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170245.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170259.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170630.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170701.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170731.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_170802.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_172038.txt |
0 | 17 | -17 |
platform/backend/logs/query_embedding_20251112_172435.txt |
0 | 17 | -17 |
Verify this commit:
git show --stat fb2ac72bc34a4ae0830b92ec5e6b4498aadea5c8Full Hash: db8bf83f46fe067556b4b32cf873292a17a89264
Short Hash: db8bf83
Timestamp: 2025-11-13 14:23:50 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:23:50 UTC
Summary: 1 files changed, 34 insertions(+), 16 deletions(-), net: 18 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/thinking_utils.py |
34 | 16 | 18 |
Verify this commit:
git show --stat db8bf83f46fe067556b4b32cf873292a17a89264Full Hash: 2ad97b78661755a9352c5216547e8fab342db523
Short Hash: 2ad97b7
Timestamp: 2025-11-13 14:17:35 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:17:35 UTC
Summary: 1 files changed, 153 insertions(+), 0 deletions(-), net: 153 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
153 | 0 | 153 |
Verify this commit:
git show --stat 2ad97b78661755a9352c5216547e8fab342db523Full Hash: 025c4ed381715a5e38c5d653c3384447519e4575
Short Hash: 025c4ed
Timestamp: 2025-11-13 14:15:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:15:58 UTC
Summary: 11 files changed, 311 insertions(+), 675 deletions(-), net: -364 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/scripts/helpers.sh |
1 | 1 | 0 |
Taskfile.yml |
12 | 1 | 11 |
docker-compose.local.yml |
17 | 4 | 13 |
logs/platform/backend/dev.log |
0 | 597 | -597 |
platform/backend/app/agent_engine/anthropic_client.py |
23 | 5 | 18 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
76 | 7 | 69 |
platform/backend/app/agent_engine/thinking_utils.py |
58 | 0 | 58 |
platform/backend/app/agent_engine/transcript_manager.py |
23 | 0 | 23 |
platform/backend/app/observability/structlog_setup.py |
22 | 14 | 8 |
scripts/task_deploy_local.sh |
45 | 20 | 25 |
scripts/task_kill_ports.sh |
34 | 26 | 8 |
Verify this commit:
git show --stat 025c4ed381715a5e38c5d653c3384447519e4575Full Hash: 114c99c69ef3f7ca827acff50dabe499453c5f79
Short Hash: 114c99c
Timestamp: 2025-11-13 14:02:43 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:02:43 UTC
Summary: 1 files changed, 3 insertions(+), 3 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
3 | 3 | 0 |
Verify this commit:
git show --stat 114c99c69ef3f7ca827acff50dabe499453c5f79Full Hash: 10b0f2d2b27dc56720a6c4d97bda7d0a6540ac46
Short Hash: 10b0f2d
Timestamp: 2025-11-13 14:02:29 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: auto-commit 2025-11-13 22:02:29 UTC
Summary: 7 files changed, 759 insertions(+), 191 deletions(-), net: 568 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/scripts/helpers.sh |
7 | 1 | 6 |
docker-compose.local.yml |
3 | 4 | -1 |
logs/platform/backend/dev.log |
455 | 164 | 291 |
platform/backend/app/agent_engine/transcript_manager.py |
272 | 18 | 254 |
scripts/task_commit.sh |
10 | 3 | 7 |
scripts/task_deploy_local.sh |
6 | 0 | 6 |
taskfile |
6 | 1 | 5 |
Verify this commit:
git show --stat 10b0f2d2b27dc56720a6c4d97bda7d0a6540ac46Full Hash: 561abbf59acced308fccdf919674a06b57ae641e
Short Hash: 561abbf
Timestamp: 2025-11-13 13:56:14 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 6 files changed, 288 insertions(+), 173 deletions(-), net: 115 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/pipeline.yml |
0 | 10 | -10 |
buildkite-spec.md |
3 | 6 | -3 |
docker-compose.local.yml |
6 | 5 | 1 |
logs/platform/backend/dev.log |
263 | 144 | 119 |
scripts/task_deploy_local.sh |
10 | 4 | 6 |
scripts/task_kill_ports.sh |
6 | 4 | 2 |
Verify this commit:
git show --stat 561abbf59acced308fccdf919674a06b57ae641eFull Hash: 1d293178ae26e273f53d4c4d0d86eddde47d4dc0
Short Hash: 1d29317
Timestamp: 2025-11-13 13:49:35 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 1 files changed, 11 insertions(+), 4 deletions(-), net: 7 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
scripts/task_kill_ports.sh |
11 | 4 | 7 |
Verify this commit:
git show --stat 1d293178ae26e273f53d4c4d0d86eddde47d4dc0Full Hash: b3f640312256aa82a3dadea8a9a92b9d933016e4
Short Hash: b3f6403
Timestamp: 2025-11-13 13:48:41 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 4 files changed, 169 insertions(+), 339 deletions(-), net: -170 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
buildkite-steps.yml |
7 | 0 | 7 |
logs/platform/backend/dev.log |
139 | 326 | -187 |
pipeline.yml |
6 | 0 | 6 |
scripts/task_kill_ports.sh |
17 | 13 | 4 |
Verify this commit:
git show --stat b3f640312256aa82a3dadea8a9a92b9d933016e4Full Hash: 57a2743e454fe8a03728c9cac34087b7c0b2492c
Short Hash: 57a2743
Timestamp: 2025-11-13 13:45:13 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 2 files changed, 120 insertions(+), 22 deletions(-), net: 98 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
1 | 1 | 0 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
119 | 21 | 98 |
Verify this commit:
git show --stat 57a2743e454fe8a03728c9cac34087b7c0b2492cFull Hash: 1564d77e8d17b59b9101a110f0dd35019b5110e4
Short Hash: 1564d77
Timestamp: 2025-11-13 13:39:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 2 files changed, 39 insertions(+), 1 deletions(-), net: 38 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Taskfile.yml |
7 | 1 | 6 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
32 | 0 | 32 |
Verify this commit:
git show --stat 1564d77e8d17b59b9101a110f0dd35019b5110e4Full Hash: 79ef4d56f4f9b20a2e4b7c31840cd9ab594e10ba
Short Hash: 79ef4d5
Timestamp: 2025-11-13 13:35:16 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 11 files changed, 1235 insertions(+), 223 deletions(-), net: 1012 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/pipeline.yml |
10 | 0 | 10 |
Taskfile.yml |
7 | 0 | 7 |
buildkite-spec.md |
94 | 3 | 91 |
docs/BERTHIER_BRAND_DESIGN_DOC.md |
360 | 0 | 360 |
logs/platform/backend/dev.log |
322 | 92 | 230 |
platform/backend/api/inbox.py |
210 | 107 | 103 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
50 | 4 | 46 |
platform/backend/app/observability/structlog_setup.py |
30 | 0 | 30 |
scripts/task_commit.sh |
35 | 0 | 35 |
scripts/task_deploy_local.sh |
53 | 0 | 53 |
scripts/task_kill_ports.sh |
64 | 17 | 47 |
Verify this commit:
git show --stat 79ef4d56f4f9b20a2e4b7c31840cd9ab594e10baFull Hash: 466eb5cd482b0a36161fa201c13d5cec85dfdfbd
Short Hash: 466eb5c
Timestamp: 2025-11-13 13:12:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 57 files changed, 3706 insertions(+), 3075 deletions(-), net: 631 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.buildkite/pipeline.yml |
38 | 0 | 38 |
.buildkite/scripts/helpers.sh |
112 | 0 | 112 |
.buildkite/scripts/print_success_summary.sh |
15 | 0 | 15 |
.buildkite/scripts/run_backend_regression_tests.sh |
27 | 0 | 27 |
.buildkite/scripts/run_critical_security_tests.sh |
27 | 0 | 27 |
.buildkite/scripts/run_frontend_regression_tests.sh |
27 | 0 | 27 |
.gitignore |
1 | 0 | 1 |
HOW_TO_RUN_TASK.md |
61 | 0 | 61 |
MAKEFILE_VS_TASKFILE.md |
294 | 0 | 294 |
Makefile |
12 | 2772 | -2760 |
README.md |
9 | 7 | 2 |
TASKFILE_MIGRATION.md |
227 | 0 | 227 |
TASKFILE_VERIFICATION.md |
189 | 0 | 189 |
Taskfile.yml |
499 | 0 | 499 |
agents.md |
11 | 8 | 3 |
buildkite-spec.md |
139 | 0 | 139 |
docker-compose.local.yml |
9 | 9 | 0 |
frontend.pid |
1 | 0 | 1 |
logs/platform/backend/dev.log |
144 | 2 | 142 |
platform/backend/Dockerfile.dev |
10 | 6 | 4 |
platform/backend/api/inbox.py |
168 | 126 | 42 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
0 | 2 | -2 |
platform/backend/app/agent_engine/session_manager.py |
22 | 84 | -62 |
scripts/deploy-local.sh |
294 | 59 | 235 |
scripts/setup_gmail_watches.sh |
57 | 0 | 57 |
scripts/task_check_prod_readiness.sh |
14 | 0 | 14 |
scripts/task_ci_setup_secrets.sh |
11 | 0 | 11 |
scripts/task_ci_test.sh |
10 | 0 | 10 |
scripts/task_create_prod_pr.sh |
14 | 0 | 14 |
scripts/task_deploy_dev.sh |
15 | 0 | 15 |
scripts/task_deploy_local.sh |
783 | 0 | 783 |
scripts/task_deploy_prod.sh |
14 | 0 | 14 |
scripts/task_deploy_prod_pr_flow.sh |
14 | 0 | 14 |
scripts/task_deploy_production_ci.sh |
10 | 0 | 10 |
scripts/task_deploy_render.sh |
12 | 0 | 12 |
scripts/task_deploy_render_dev.sh |
10 | 0 | 10 |
scripts/task_deploy_render_prod.sh |
10 | 0 | 10 |
scripts/task_deploy_staging_ci.sh |
10 | 0 | 10 |
scripts/task_deploy_vercel.sh |
11 | 0 | 11 |
scripts/task_deploy_vercel_app.sh |
10 | 0 | 10 |
scripts/task_deploy_vercel_www.sh |
10 | 0 | 10 |
scripts/task_deploy_website_dev.sh |
10 | 0 | 10 |
scripts/task_deploy_website_full_local.sh |
14 | 0 | 14 |
scripts/task_deploy_website_prod.sh |
10 | 0 | 10 |
scripts/task_import_full.sh |
55 | 0 | 55 |
scripts/task_kill_ports.sh |
51 | 0 | 51 |
scripts/task_logs.sh |
21 | 0 | 21 |
scripts/task_mlflow_ui.sh |
18 | 0 | 18 |
scripts/task_posthog_bootstrap.sh |
14 | 0 | 14 |
scripts/task_publish_dev.sh |
12 | 0 | 12 |
scripts/task_sync_platform_env.sh |
22 | 0 | 22 |
scripts/task_sync_render_env.sh |
38 | 0 | 38 |
scripts/task_sync_website_env.sh |
29 | 0 | 29 |
scripts/task_test_render_backend.sh |
29 | 0 | 29 |
scripts/task_verify_integration.sh |
14 | 0 | 14 |
scripts/task_verify_vercel_links.sh |
14 | 0 | 14 |
taskfile |
4 | 0 | 4 |
Verify this commit:
git show --stat 466eb5cd482b0a36161fa201c13d5cec85dfdfbdFull Hash: 57682998b5f85a2e6aafc358f4635a62c869b56f
Short Hash: 5768299
Timestamp: 2025-11-13 12:11:06 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 2 files changed, 109 insertions(+), 317 deletions(-), net: -208 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
108 | 219 | -111 |
logs/platform/backend/dev.log |
1 | 98 | -97 |
Verify this commit:
git show --stat 57682998b5f85a2e6aafc358f4635a62c869b56fFull Hash: b6b03cdfedd3b153a2759e67931755204d22daa9
Short Hash: b6b03cd
Timestamp: 2025-11-13 12:01:09 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 3 files changed, 32 insertions(+), 260 deletions(-), net: -228 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
3 | 22 | -19 |
logs/platform/backend/dev.log |
12 | 221 | -209 |
platform/backend/app/agent_engine/anthropic_client.py |
17 | 17 | 0 |
Verify this commit:
git show --stat b6b03cdfedd3b153a2759e67931755204d22daa9Full Hash: 2a2669335351c3d010865009577f61df8da9119b
Short Hash: 2a26693
Timestamp: 2025-11-13 11:58:10 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat: Add CODEOWNERS for mandatory code review
Summary: 1 files changed, 18 insertions(+), 24 deletions(-), net: -6 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.github/CODEOWNERS |
18 | 24 | -6 |
Verify this commit:
git show --stat 2a2669335351c3d010865009577f61df8da9119bFull Hash: a656042453e3327bab7259a657f0b0582e0c9244
Short Hash: a656042
Timestamp: 2025-11-13 11:46:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 46 files changed, 5847 insertions(+), 9851 deletions(-), net: -4004 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
28 | 2 | 26 |
.github/PULL_REQUEST_TEMPLATE.md |
50 | 0 | 50 |
.github/workflows/regression-tests.yml |
167 | 0 | 167 |
Makefile |
232 | 40 | 192 |
TESTING.md |
330 | 0 | 330 |
agents.md |
1054 | 268 | 786 |
docker-compose.local.yml |
15 | 3 | 12 |
docs/roadmap/email/v1/local/specs/agent/actions-and-interactions/CLAUDE.md |
0 | 6 | -6 |
docs/specs/native-anthropic-client-spec.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
147 | 297 | -150 |
platform/backend/api/ai_prompts.py |
285 | 64 | 221 |
platform/backend/api/errors.py |
87 | 1 | 86 |
platform/backend/app/agent_engine/anthropic_client.py |
17 | 17 | 0 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
159 | 21 | 138 |
platform/backend/app/config/__init__.py |
3 | 0 | 3 |
platform/backend/app/observability/langfuse_integration.py |
264 | 0 | 264 |
platform/backend/app/services/inbox_sync_service.py |
35 | 0 | 35 |
platform/backend/app/tools/arcade_mcp_client.py |
217 | 27 | 190 |
platform/backend/app/tools/mcp_client.py |
6 | 3 | 3 |
platform/backend/celery_app.py |
15 | 0 | 15 |
platform/backend/migrations/073_create_restricted_database_roles.sql |
4 | 2 | 2 |
platform/backend/migrations/075_update_email_embedding_dimension.sql |
1 | 1 | 0 |
platform/backend/poetry.lock |
0 | 8960 | -8960 |
platform/backend/pyproject.toml |
0 | 95 | -95 |
platform/backend/tests/regression/CRITICAL_TESTS.md |
184 | 0 | 184 |
platform/backend/tests/regression/README.md |
171 | 0 | 171 |
platform/backend/tests/regression/test_api_core_endpoints.py |
98 | 0 | 98 |
platform/backend/tests/regression/test_database_connections.py |
80 | 0 | 80 |
platform/backend/tests/regression/test_gmail_core_functionality.py |
361 | 0 | 361 |
platform/backend/tests/regression/test_gmail_service.py |
149 | 0 | 149 |
platform/backend/tests/regression/test_no_direct_main_commits.py |
61 | 0 | 61 |
platform/backend/tests/regression/test_no_langfuse_in_prod.py |
238 | 0 | 238 |
platform/backend/tests/regression/test_no_pii_logging.py |
228 | 0 | 228 |
platform/backend/tests/regression/test_no_temp_logs.py |
129 | 0 | 129 |
platform/frontend/app/dashboard/settings/page.tsx |
115 | 16 | 99 |
platform/frontend/app/globals.css |
21 | 0 | 21 |
platform/frontend/app/layout.tsx |
2 | 0 | 2 |
platform/frontend/components/ConsoleLoggerInit.tsx |
23 | 0 | 23 |
platform/frontend/components/inbox/AssistantPane.tsx |
34 | 22 | 12 |
platform/frontend/lib/console-logger.ts |
202 | 0 | 202 |
platform/frontend/package.json |
2 | 0 | 2 |
platform/frontend/tests/regression/README.md |
124 | 0 | 124 |
platform/frontend/tests/regression/inbox-plan-b.spec.ts |
216 | 0 | 216 |
platform/frontend/tests/regression/settings-page.spec.ts |
152 | 0 | 152 |
pyproject.toml |
7 | 6 | 1 |
run-regression-tests.sh |
133 | 0 | 133 |
Verify this commit:
git show --stat a656042453e3327bab7259a657f0b0582e0c9244Full Hash: b37dc2b17f5127a9591ccfcb9badebec0b70ec02
Short Hash: b37dc2b
Timestamp: 2025-11-13 09:19:08 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 17 files changed, 3295 insertions(+), 3 deletions(-), net: 3292 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak3 |
239 | 0 | 239 |
Dockerfile |
1 | 1 | 0 |
MCP_IMPLEMENTATION_STATUS.md |
130 | 0 | 130 |
arcade-spec.md |
93 | 0 | 93 |
contacts-centralization-spec.md |
126 | 0 | 126 |
my_server/.gitignore |
1 | 0 | 1 |
my_server/pyproject.toml |
38 | 0 | 38 |
my_server/src/my_server/.env.example |
1 | 0 | 1 |
my_server/src/my_server/__init__.py |
0 | 0 | 0 |
my_server/src/my_server/server.py |
74 | 0 | 74 |
my_server/uv.lock |
2050 | 0 | 2050 |
platform/backend/Dockerfile |
1 | 0 | 1 |
platform/backend/Dockerfile.dev |
1 | 0 | 1 |
platform/backend/app/tools/arcade_mcp_client.py |
261 | 0 | 261 |
pyproject.toml |
121 | 0 | 121 |
scripts/dev/cache_utils.sh |
4 | 2 | 2 |
smart-search.md |
154 | 0 | 154 |
Verify this commit:
git show --stat b37dc2b17f5127a9591ccfcb9badebec0b70ec02Full Hash: 84b50d14d6733fb60de8dc4b321c3877a73810b2
Short Hash: 84b50d1
Timestamp: 2025-11-13 09:17:17 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: before deleting backend py toml
Summary: 66 files changed, 60267 insertions(+), 65131 deletions(-), net: -4864 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
10 | 3 | 7 |
.env.local.bak2 |
32 | 6 | 26 |
.gitignore |
6 | 4 | 2 |
CICD_SETUP.md |
3 | 3 | 0 |
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
Makefile |
50 | 27 | 23 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/guides/ARCADE_DASHBOARD_SETUP.md |
145 | 0 | 145 |
docs/implementation/HYDRATION_V2_AUDIT.md |
1 | 0 | 1 |
docs/ops-runbook.md |
1 | 0 | 1 |
docs/roadmap/diagnoses/ARCADE_DIAGNOSIS.md |
139 | 0 | 139 |
docs/roadmap/platform/setup-guide.md |
1 | 1 | 0 |
docs/setup/voyage-embeddings-setup.md |
1 | 1 | 0 |
docs/testing/email-detail-cache-scenarios.md |
1 | 0 | 1 |
logs/platform/backend/dev.log |
289 | 729 | -440 |
nova.code-workspace |
3 | 1 | 2 |
platform/backend/api/arcade.py |
462 | 658 | -196 |
platform/backend/api/inbox.py |
1230 | 911 | 319 |
platform/backend/api/websocket.py |
1 | 1 | 0 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
69 | 249 | -180 |
platform/backend/app/agent_engine/anthropic_client.py |
121 | 33 | 88 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
434 | 73 | 361 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
26 | 55 | -29 |
platform/backend/app/agent_engine/approval_checker.py |
4 | 0 | 4 |
platform/backend/app/agent_engine/specialized_agents.py |
22 | 2432 | -2410 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/thinking_utils.py |
30 | 55 | -25 |
platform/backend/app/agent_engine/transcript_manager.py |
0 | 12 | -12 |
platform/backend/app/config/__init__.py |
4 | 3 | 1 |
platform/backend/app/observability/alerts.py |
1 | 0 | 1 |
platform/backend/app/permissions/checker.py |
60 | 23 | 37 |
platform/backend/app/services/gmail_api.py |
37 | 4 | 33 |
platform/backend/app/services/gmail_service.py |
50 | 2 | 48 |
platform/backend/app/services/inbox_sync_service.py |
1 | 1 | 0 |
platform/backend/app/tools/arcade_dynamic.py |
884 | 1676 | -792 |
platform/backend/init_db.py |
1 | 1 | 0 |
platform/backend/logs/app.log.1 |
2139 | 31324 | -29185 |
platform/backend/logs/app.log.2 |
59 | 20 | 39 |
platform/backend/logs/app.log.3 |
21557 | 2853 | 18704 |
platform/backend/logs/app.log.4 |
31324 | 23660 | 7664 |
platform/backend/logs/app.log.5 |
20 | 196 | -176 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
1 | 0 | 1 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/backend/scripts/rerun_vector_query.py |
0 | 0 | 0 |
platform/backend/tests/lint/test_no_temp_logs.py |
2 | 2 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
72 | 26 | 46 |
platform/frontend/app/dashboard/settings/page.tsx |
580 | 3 | 577 |
platform/frontend/app/onboarding/connect/page.tsx |
15 | 11 | 4 |
platform/frontend/archived/arcade/arcade-authorization-modal.tsx |
249 | 33 | 216 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AssistantPane.tsx |
89 | 21 | 68 |
platform/frontend/components/inbox/BehindTheScenes.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/InboxPlanB.tsx |
15 | 0 | 15 |
platform/frontend/components/inbox/ThinkingOverlay.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
1 | 0 | 1 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/lib/feature-flags.ts |
2 | 2 | 0 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
platform/render.dev.yaml |
3 | 6 | -3 |
platform/render.prod.yaml |
3 | 6 | -3 |
scripts/deploy_prod_enhanced.sh |
1 | 1 | 0 |
scripts/validate_prod_env.sh |
3 | 3 | 0 |
Verify this commit:
git show --stat 84b50d14d6733fb60de8dc4b321c3877a73810b2Full Hash: 0213993d58fc4b926ee58b40c80871115fdafb77
Short Hash: 0213993
Timestamp: 2025-11-12 19:50:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 148 files changed, 3512 insertions(+), 98 deletions(-), net: 3414 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
2 | 3 | -1 |
logs/platform/backend/dev.log |
898 | 0 | 898 |
logs/platform/backend/run-20251112-192934.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-193235.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-193500.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-193603.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-193746.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194024.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194030.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194034.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194104.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194154.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194159.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194203.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194206.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194232.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194243.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194257.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194308.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194314.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194332.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194336.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194339.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194343.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194346.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194350.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194355.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194358.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194402.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194405.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194408.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194411.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194423.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194426.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194429.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194432.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194435.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194438.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194441.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194444.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194447.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194450.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194454.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194458.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194501.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194505.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194508.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194511.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194514.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194517.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194520.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194523.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194527.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194547.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194550.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194553.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194558.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194601.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194604.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194608.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194622.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194626.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194629.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194640.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194643.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194646.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194649.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194652.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194655.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194658.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194701.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194707.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194710.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-194727.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-192934.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-193235.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-193500.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-193603.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-193746.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194024.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194030.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194034.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194104.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194154.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194159.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194203.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194206.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194232.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194243.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194257.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194308.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194314.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194332.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194336.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194339.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194343.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194346.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194350.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194355.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194358.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194402.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194405.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194408.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194411.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194423.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194426.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194429.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194432.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194435.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194438.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194441.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194444.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194447.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194450.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194454.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194458.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194501.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194505.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194508.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194511.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194514.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194517.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194520.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194523.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194527.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194547.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194550.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194553.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194558.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194601.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194604.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194608.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194622.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194626.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194629.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194640.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194643.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194646.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194649.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194652.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194655.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194658.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194701.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194707.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194710.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-194727.yaml |
17 | 0 | 17 |
platform/backend/app/agent_engine/anthropic_client.py |
103 | 95 | 8 |
platform/backend/tests/lint/test_no_temp_logs.py |
61 | 0 | 61 |
Verify this commit:
git show --stat 0213993d58fc4b926ee58b40c80871115fdafb77Full Hash: bd3fc6e51e507b1c14dc198662e0a64df5414e24
Short Hash: bd3fc6e
Timestamp: 2025-11-12 19:47:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 11 files changed, 564 insertions(+), 227166 deletions(-), net: -226602 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docker-compose.local.yml |
26 | 0 | 26 |
logs/platform/backend/dev.log |
0 | 226789 | -226789 |
platform/backend/api/inbox.py |
139 | 3 | 136 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
33 | 28 | 5 |
platform/backend/app/agent_engine/anthropic_client.py |
188 | 171 | 17 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
1 | 0 | 1 |
platform/backend/app/agent_engine/specialized_agents.py |
3 | 3 | 0 |
platform/backend/app/agent_engine/transcript_manager.py |
1 | 1 | 0 |
platform/backend/main.py |
9 | 8 | 1 |
platform/backend/scripts/rerun_vector_query.py |
4 | 5 | -1 |
platform/frontend/components/costs/CostPanel.tsx |
160 | 158 | 2 |
Verify this commit:
git show --stat bd3fc6e51e507b1c14dc198662e0a64df5414e24Full Hash: ebc89c6e4679851acad236c9d4e0554c3793ce5d
Short Hash: ebc89c6
Timestamp: 2025-11-12 19:29:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 52 files changed, 29561 insertions(+), 387 deletions(-), net: 29174 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
15 | 1 | 14 |
docker-compose.local.yml |
21 | 0 | 21 |
docs/specs/claude-single-agent-rewrite.md |
0 | 159 | -159 |
docs/specs/native-anthropic-client-spec.md |
188 | 0 | 188 |
logs/platform/backend/dev.log |
22930 | 0 | 22930 |
logs/platform/backend/run-20251112-182943.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-183509.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-183624.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-183743.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-184227.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-185146.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-191054.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-191955.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-192635.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-192748.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-182943.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-183509.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-183624.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-183743.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-184227.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-185146.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-191054.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-191955.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-192635.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-192748.yaml |
17 | 0 | 17 |
platform/backend/api/approvals.py |
313 | 0 | 313 |
platform/backend/api/inbox.py |
86 | 0 | 86 |
platform/backend/app/agent_engine/action_box_schemas.py |
261 | 0 | 261 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
467 | 183 | 284 |
platform/backend/app/agent_engine/anthropic_client.py |
530 | 0 | 530 |
platform/backend/app/agent_engine/anthropic_client_adapter.py |
530 | 0 | 530 |
platform/backend/app/agent_engine/approval_checker.py |
239 | 0 | 239 |
platform/backend/app/agent_engine/langfuse_integration.py |
313 | 0 | 313 |
platform/backend/app/agent_engine/logs.dev |
1551 | 0 | 1551 |
platform/backend/app/agent_engine/observability_sanitizer.py |
248 | 0 | 248 |
platform/backend/app/agent_engine/token_accounting.py |
153 | 0 | 153 |
platform/backend/app/agent_engine/transcript_manager.py |
307 | 0 | 307 |
platform/backend/app/config/__init__.py |
6 | 0 | 6 |
platform/backend/app/models/agent_transcript.py |
35 | 0 | 35 |
platform/backend/app/models/approval_policy.py |
55 | 0 | 55 |
platform/backend/main.py |
2 | 1 | 1 |
platform/backend/migrations/099_add_agent_transcripts.sql |
23 | 0 | 23 |
platform/backend/migrations/100_add_approval_policies.sql |
50 | 0 | 50 |
platform/backend/scripts/replay_harness.py |
185 | 0 | 185 |
platform/frontend/app/dashboard/settings/approval-policies/page.tsx |
158 | 0 | 158 |
platform/frontend/components/inbox/ActionBox.tsx |
4 | 0 | 4 |
platform/frontend/components/inbox/ActionBoxV2.tsx |
96 | 30 | 66 |
platform/frontend/components/inbox/AssistantPane.tsx |
113 | 13 | 100 |
platform/frontend/components/inbox/ResearchTimeline.tsx |
178 | 0 | 178 |
platform/frontend/components/inbox/ThinkingIndicator.tsx |
57 | 0 | 57 |
platform/frontend/components/inbox/TokenUsageMeter.tsx |
105 | 0 | 105 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
Verify this commit:
git show --stat ebc89c6e4679851acad236c9d4e0554c3793ce5dFull Hash: 2decb05e7761253ce49d17fe6d99347de91eb44c
Short Hash: 2decb05
Timestamp: 2025-11-12 18:29:37 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 69 files changed, 125022 insertions(+), 67452 deletions(-), net: 57570 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
3 | 0 | 3 |
logs/platform/backend/dev.log |
21410 | 0 | 21410 |
logs/platform/backend/run-20251112-173508.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-173630.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-174257.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-174418.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-174544.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-174558.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-175429.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-175500.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-180325.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-180515.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-180654.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-181134.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-181703.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-181750.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-182137.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-182228.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-182353.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-182843.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173508.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173630.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-174257.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-174418.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-174544.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-174558.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-175429.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-175500.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-180325.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-180515.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-180654.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-181134.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-181703.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-181750.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-182137.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-182228.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-182353.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-182843.yaml |
17 | 0 | 17 |
platform/backend/api/inbox.py |
49 | 1 | 48 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
951 | 211 | 740 |
platform/backend/app/agent_engine/specialized_agents.py |
10 | 4 | 6 |
platform/backend/app/config/__init__.py |
3 | 0 | 3 |
platform/backend/app/observability/llm_usage_tracker.py |
10 | 1 | 9 |
platform/backend/app/services/email_detail_service.py |
26 | 13 | 13 |
platform/backend/app/services/gmail_api.py |
15 | 0 | 15 |
platform/backend/app/services/gmail_service.py |
25 | 0 | 25 |
platform/backend/logs/app.log.1 |
31324 | 20 | 31304 |
platform/backend/logs/app.log.2 |
20 | 2853 | -2833 |
platform/backend/logs/app.log.3 |
2853 | 23660 | -20807 |
platform/backend/logs/app.log.4 |
23660 | 196 | 23464 |
platform/backend/logs/app.log.5 |
196 | 12557 | -12361 |
platform/backend/logs/errors.log.1 |
16553 | 25915 | -9362 |
platform/backend/logs/errors.log.2 |
25987 | 133 | 25854 |
platform/backend/logs/errors.log.3 |
133 | 38 | 95 |
platform/backend/logs/errors.log.4 |
38 | 647 | -609 |
platform/backend/logs/errors.log.5 |
647 | 647 | 0 |
platform/frontend/components/inbox/ComposeCard.tsx |
9 | 99 | -90 |
platform/frontend/components/inbox/ComposeModal.tsx |
5 | 115 | -110 |
platform/frontend/components/inbox/FullScreenComposer.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ReplyComposer.tsx |
75 | 217 | -142 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
101 | 110 | -9 |
platform/frontend/components/inbox/composer-formatting-shortcuts.ts |
2 | 12 | -10 |
platform/frontend/components/{inbox => markdown}/MarkdownEditor.tsx |
0 | 0 | 0 |
platform/frontend/components/markdown/MarkdownToolbar.tsx |
120 | 0 | 120 |
platform/frontend/components/markdown/command-runner.ts |
170 | 0 | 170 |
platform/frontend/components/markdown/index.ts |
5 | 0 | 5 |
scripts/make_shell_wrapper.sh |
6 | 1 | 5 |
specs/extended-thinking-streaming-spec.md |
2 | 0 | 2 |
Verify this commit:
git show --stat 2decb05e7761253ce49d17fe6d99347de91eb44cFull Hash: def0e9de1d9c8fec1bf9d9dd3b6bd7a9f70f3746
Short Hash: def0e9d
Timestamp: 2025-11-12 17:34:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 98 files changed, 61303 insertions(+), 37540 deletions(-), net: 23763 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
1 | 1 | 0 |
HYDRATION_FIX_AUDIT.md |
1 | 0 | 1 |
README.md |
23 | 4 | 19 |
docs/ops-runbook.md |
64 | 0 | 64 |
docs/specs/claude-single-agent-rewrite-audit.md |
1 | 0 | 1 |
docs/testing/email-detail-cache-scenarios.md |
184 | 0 | 184 |
logs/platform/backend/dev.log |
19247 | 0 | 19247 |
logs/platform/backend/run-20251112-154935.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-163026.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-163125.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-165019.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-165928.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-170115.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-172638.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-172953.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-173045.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-173055.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-173203.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-173225.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-154935.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-163026.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-163125.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-165019.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-165928.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-170115.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-172638.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-172953.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173045.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173055.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173203.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-173225.yaml |
17 | 0 | 17 |
platform/backend/api/inbox.py |
210 | 2 | 208 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
23 | 2 | 21 |
platform/backend/app/agent_engine/orchestrator.py |
25 | 40 | -15 |
platform/backend/app/agent_engine/specialized_agents.py |
119 | 18 | 101 |
platform/backend/app/agent_engine/thinking_config.py |
24 | 6 | 18 |
platform/backend/app/agent_engine/thinking_parser.py |
1 | 0 | 1 |
platform/backend/app/config/__init__.py |
6 | 0 | 6 |
platform/backend/app/models/sync_job.py |
1 | 0 | 1 |
platform/backend/app/observability/alerts.py |
141 | 0 | 141 |
platform/backend/app/services/email_detail_cache_service.py |
9 | 5 | 4 |
platform/backend/app/services/email_detail_service.py |
20 | 4 | 16 |
platform/backend/app/services/gmail_api.py |
34 | 1 | 33 |
platform/backend/app/services/inbox_sync_service.py |
8 | 2 | 6 |
platform/backend/celery_app.py |
38 | 6 | 32 |
platform/backend/ghostwriter_analyze.sh |
10 | 4 | 6 |
platform/backend/logs/app.log.1 |
20 | 196 | -176 |
platform/backend/logs/app.log.2 |
2853 | 12557 | -9704 |
platform/backend/logs/app.log.3 |
23660 | 24358 | -698 |
platform/backend/logs/app.log.4 |
196 | 242 | -46 |
platform/backend/logs/app.log.5 |
12557 | 29 | 12528 |
platform/backend/logs/query_embedding_20251112_165336.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165403.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165409.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165436.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165441.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165844.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_165945.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170132.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170234.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170245.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170259.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170630.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170701.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170731.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_170802.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_172038.txt |
17 | 0 | 17 |
platform/backend/logs/query_embedding_20251112_172435.txt |
17 | 0 | 17 |
platform/backend/migrations/097_add_email_detail_cache.sql |
1 | 0 | 1 |
platform/backend/migrations/098_add_backfill_detail_cache.sql |
16 | 0 | 16 |
platform/backend/rerun_draft_assist.py |
4 | 2 | 2 |
platform/backend/scripts/inspect_celery_queue.py |
1 | 0 | 1 |
platform/backend/scripts/rerun_vector_query.py |
297 | 0 | 297 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
18 | 4 | 14 |
platform/frontend/app/dashboard/settings/page.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/BehindTheScenes.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ComposeCard.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailBodyRenderer.tsx |
38 | 0 | 38 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
22 | 5 | 17 |
platform/frontend/components/inbox/InboxPlanB.tsx |
57 | 5 | 52 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
39 | 4 | 35 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
60 | 3 | 57 |
platform/frontend/components/inbox/ReplyComposer.tsx |
26 | 10 | 16 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
26 | 2 | 24 |
platform/frontend/components/inbox/SnoozeTray.tsx |
40 | 19 | 21 |
platform/frontend/components/inbox/ThinkingOverlay.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ThreadRow.tsx |
22 | 3 | 19 |
platform/frontend/components/inbox/WatcherHealthBanner.tsx |
92 | 0 | 92 |
platform/frontend/components/ui/tooltip.tsx |
1 | 1 | 0 |
platform/frontend/hooks/useDraftAutosave.ts |
24 | 3 | 21 |
platform/frontend/lib/format.ts |
1 | 0 | 1 |
platform/render.dev.yaml |
6 | 0 | 6 |
platform/render.prod.yaml |
6 | 0 | 6 |
specs/cot-inline-placeholder-phased.md |
90 | 0 | 90 |
specs/cot-thinking-placeholder-spec.md |
85 | 0 | 85 |
specs/extended-thinking-streaming-spec.md |
66 | 0 | 66 |
specs/gmail-missing-id-spec.md |
28 | 0 | 28 |
specs/vector-spec.md |
60 | 0 | 60 |
Verify this commit:
git show --stat def0e9de1d9c8fec1bf9d9dd3b6bd7a9f70f3746Full Hash: ae839eb339beb2e514b618588c7ad21bd728e78e
Short Hash: ae839eb
Timestamp: 2025-11-12 15:33:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 283 files changed, 119225 insertions(+), 44761 deletions(-), net: 74464 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
19 | 2 | 17 |
HYDRATION_FIX_AUDIT.md |
174 | 0 | 174 |
HYDRATION_IMPLEMENTATION_AUDIT.md |
383 | 0 | 383 |
HYDRATION_V2_STATUS_REPORT.md |
286 | 0 | 286 |
INBOX_SYNC_MIGRATION_STATUS.md |
495 | 0 | 495 |
Makefile |
81 | 49 | 32 |
README.md |
19 | 0 | 19 |
docs/PUBSUB_SETUP.md |
1 | 0 | 1 |
docs/implementation/HYDRATION_V2_AUDIT.md |
109 | 0 | 109 |
docs/intelligence/shortwave/shortwave-search-complete.md |
675 | 0 | 675 |
docs/specs/claude-single-agent-rewrite-audit.md |
318 | 0 | 318 |
docs/specs/claude-single-agent-rewrite.md |
18 | 0 | 18 |
hydration-spec.md |
92 | 0 | 92 |
logs/platform/backend/dev.log |
65860 | 0 | 65860 |
logs/platform/backend/run-20251111-132823.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-133239.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-133555.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-133706.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-134638.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-134641.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-134725.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-135507.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-135530.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-135906.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-140042.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141158.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141232.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141233.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141240.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141248.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141315.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141418.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141504.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-141659.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-142219.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-142326.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-143632.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-143656.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-145611.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-153042.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-154909.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-155431.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-155612.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-155732.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-155847.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-155858.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-160030.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-160737.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-160848.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-161616.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-162144.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-162417.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-162527.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-163046.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-163454.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-164652.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-164818.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-164858.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-165549.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-170558.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-170904.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-172215.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-172341.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-172559.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-173455.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-173712.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-173903.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-175325.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-175659.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-180400.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-181557.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-182258.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-182400.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-182426.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-182732.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-182935.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-183055.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-183510.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-200741.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-074212.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-080118.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-084620.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-093635.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-122341.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-122907.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-123146.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-123643.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251112-135328.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-132823.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-133239.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-133555.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-133706.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-134638.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-134641.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-134725.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-135507.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-135530.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-135906.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-140042.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141158.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141232.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141233.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141240.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141248.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141315.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141418.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141504.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-141659.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-142219.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-142326.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-143632.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-143656.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-145611.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-153042.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-154909.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-155431.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-155612.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-155732.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-155847.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-155858.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-160030.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-160737.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-160848.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-161616.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-162144.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-162417.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-162527.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-163046.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-163454.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-164652.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-164818.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-164858.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-165549.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-170558.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-170904.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-172215.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-172341.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-172559.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-173455.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-173712.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-173903.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-175325.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-175659.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-180400.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-181557.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-182258.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-182400.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-182426.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-182732.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-182935.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-183055.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-183510.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-200741.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-074212.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-080118.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-084620.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-093635.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-122341.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-122907.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-123146.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-123643.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251112-135328.yaml |
17 | 0 | 17 |
platform/backend/api/agents.py |
116 | 2 | 114 |
platform/backend/api/chat.py |
10 | 11 | -1 |
platform/backend/api/inbox.py |
1454 | 347 | 1107 |
platform/backend/api/runs.py |
1 | 1 | 0 |
platform/backend/api/search.py |
1 | 1 | 0 |
platform/backend/api/websocket.py |
147 | 13 | 134 |
platform/backend/app/agent_engine/__init__.py |
25 | 15 | 10 |
platform/backend/app/agent_engine/_archive_old_agentic_code/README.md |
0 | 46 | -46 |
platform/backend/app/agent_engine/_archive_old_agentic_code/approval_gate.py |
0 | 597 | -597 |
platform/backend/app/agent_engine/_archive_old_agentic_code/controller.py |
0 | 273 | -273 |
platform/backend/app/agent_engine/_archive_old_agentic_code/guardrails.py |
0 | 591 | -591 |
platform/backend/app/agent_engine/_archive_old_agentic_code/handoff_manager.py |
0 | 536 | -536 |
platform/backend/app/agent_engine/_archive_old_agentic_code/logger.py |
0 | 90 | -90 |
platform/backend/app/agent_engine/_archive_old_agentic_code/model_router.py |
0 | 450 | -450 |
platform/backend/app/agent_engine/_archive_old_agentic_code/policies.py |
0 | 67 | -67 |
platform/backend/app/agent_engine/_archive_old_agentic_code/sandbox_manager.py |
0 | 437 | -437 |
platform/backend/app/agent_engine/_archive_old_agentic_code/specialized_agents_v1_20251111.py |
0 | 4217 | -4217 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
96 | 47 | 49 |
platform/backend/app/agent_engine/orchestrator.py |
179 | 828 | -649 |
platform/backend/app/agent_engine/specialized_agents.py |
115 | 910 | -795 |
platform/backend/app/agent_engine/thinking_config.py |
17 | 6 | 11 |
platform/backend/app/agent_engine/thinking_parser.py |
124 | 0 | 124 |
platform/backend/app/config/__init__.py |
22 | 4 | 18 |
platform/backend/app/models/email_body.py |
58 | 0 | 58 |
platform/backend/app/models/inbox_email.py |
76 | 0 | 76 |
platform/backend/app/models/inbox_hydration.py |
3 | 0 | 3 |
platform/backend/app/models/sync_job.py |
7 | 0 | 7 |
platform/backend/app/prompts/__init__.py |
177 | 4 | 173 |
platform/backend/app/prompts/gmail_strategy.py |
173 | 0 | 173 |
platform/backend/app/prompts/inbox_assistant.py |
1 | 0 | 1 |
platform/backend/app/prompts/single_agent_controller.py |
126 | 0 | 126 |
platform/backend/app/services/conversation_service.py |
1 | 1 | 0 |
platform/backend/app/services/email_detail_cache_service.py |
260 | 0 | 260 |
platform/backend/app/services/email_detail_service.py |
354 | 0 | 354 |
platform/backend/app/services/gmail_api.py |
49 | 5 | 44 |
platform/backend/app/services/gmail_service.py |
111 | 6 | 105 |
platform/backend/app/services/gmail_token_bucket_limiter.py |
210 | 0 | 210 |
platform/backend/app/services/gmail_watch_service.py |
143 | 3 | 140 |
platform/backend/app/services/inbox_sync_service.py |
498 | 49 | 449 |
platform/backend/app/tasks/inbox_hydration.py |
97 | 0 | 97 |
platform/backend/celery_app.py |
429 | 26 | 403 |
platform/backend/logs/app.log.1 |
196 | 3744 | -3548 |
platform/backend/logs/app.log.2 |
12557 | 1271 | 11286 |
platform/backend/logs/app.log.3 |
24358 | 19688 | 4670 |
platform/backend/logs/app.log.4 |
242 | 5461 | -5219 |
platform/backend/logs/app.log.5 |
29 | 2312 | -2283 |
platform/backend/main.py |
1 | 1 | 0 |
platform/backend/migrations/095_add_last_full_sync_metadata.sql |
37 | 0 | 37 |
platform/backend/migrations/096_add_user_initiated_to_sync_jobs.sql |
46 | 0 | 46 |
platform/backend/migrations/097_add_email_detail_cache.sql |
134 | 0 | 134 |
platform/backend/scripts/get_ngrok_url.py |
73 | 7 | 66 |
platform/backend/scripts/inspect_celery_queue.py |
174 | 0 | 174 |
platform/backend/scripts/inspect_thread_cache.py |
294 | 0 | 294 |
platform/backend/scripts/setup_gmail_watches.py |
455 | 30 | 425 |
platform/backend/tests/unit/agent_engine/test_orchestrator.py |
7 | 21 | -14 |
platform/backend/tests/unit/agent_engine/test_single_agent.py |
122 | 0 | 122 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1279 | 487 | 792 |
platform/frontend/app/dashboard/inbox/scheduled/page.tsx |
14 | 10 | 4 |
platform/frontend/app/dashboard/inbox/snoozed/page.tsx |
102 | 32 | 70 |
platform/frontend/app/dashboard/settings/page.tsx |
57 | 4 | 53 |
platform/frontend/app/dashboard/settings/permissions/page.tsx |
4 | 0 | 4 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ActionBoxV1.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/ActionBoxV2.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/AssistantPane.tsx |
259 | 174 | 85 |
platform/frontend/components/inbox/AttachmentBadge.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/BehindTheScenes.tsx |
131 | 0 | 131 |
platform/frontend/components/inbox/ChainOfThoughtDisplay.tsx |
0 | 764 | -764 |
platform/frontend/components/inbox/ChipBadge.tsx |
47 | 10 | 37 |
platform/frontend/components/inbox/ComposeCard.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
21 | 12 | 9 |
platform/frontend/components/inbox/ConciergeGreeting.tsx |
6 | 2 | 4 |
platform/frontend/components/inbox/EmailAssistant.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/EmailBodyRenderer.tsx |
7 | 1 | 6 |
platform/frontend/components/inbox/EmailCard.tsx |
3 | 1 | 2 |
platform/frontend/components/inbox/EmailContextMenu.tsx |
46 | 54 | -8 |
platform/frontend/components/inbox/EmailDetail.tsx |
72 | 18 | 54 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
7 | 34 | -27 |
platform/frontend/components/inbox/EmailReference.tsx |
6 | 4 | 2 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/InboxDropdown.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/InboxPlanB.tsx |
202 | 76 | 126 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
55 | 52 | 3 |
platform/frontend/components/inbox/MarkdownRenderer.tsx |
1 | 16 | -15 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
185 | 294 | -109 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
10 | 2 | 8 |
platform/frontend/components/inbox/SearchInput.tsx |
59 | 7 | 52 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
256 | 115 | 141 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
15 | 12 | 3 |
platform/frontend/components/inbox/ThinkingOverlay.tsx |
152 | 0 | 152 |
platform/frontend/components/inbox/ThreadRow.tsx |
62 | 171 | -109 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
22 | 9 | 13 |
platform/frontend/components/inbox/WhatCanIDoModal.tsx |
38 | 39 | -1 |
platform/frontend/components/inbox/__tests__/ChainOfThoughtDisplay.test.tsx |
0 | 69 | -69 |
platform/frontend/components/inbox/__tests__/EmailDetail.test.tsx |
30 | 0 | 30 |
platform/frontend/components/inbox/action-box-params.ts |
60 | 0 | 60 |
platform/frontend/components/inbox/mobile/MobileEmailRow.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/mobile/MobileThreadView.tsx |
7 | 2 | 5 |
platform/frontend/components/settings/GmailSyncSettings.tsx |
259 | 0 | 259 |
platform/frontend/components/ui/tooltip.tsx |
11 | 2 | 9 |
platform/frontend/hooks/useAssistantV2Data.ts |
7 | 0 | 7 |
platform/frontend/hooks/useEnsureEmailLoaded.ts |
21 | 6 | 15 |
platform/frontend/hooks/useFeatureFlags.tsx |
13 | 0 | 13 |
platform/frontend/hooks/useInboxHydration.ts |
335 | 57 | 278 |
platform/frontend/hooks/useTriagePolling.ts |
9 | 0 | 9 |
platform/frontend/lib/api-client.ts |
6 | 1 | 5 |
platform/frontend/lib/decode-html.ts |
13 | 0 | 13 |
platform/frontend/lib/feature-flags.ts |
6 | 0 | 6 |
platform/frontend/lib/format.ts |
18 | 0 | 18 |
platform/frontend/lib/label-utils.ts |
67 | 30 | 37 |
platform/frontend/lib/search-utils.ts |
148 | 0 | 148 |
platform/frontend/{app/dashboard/inbox => lib}/thinking-steps.ts |
21 | 4 | 17 |
platform/frontend/package-lock.json |
1 | 0 | 1 |
platform/frontend/package.json |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
platform/frontend/styles/tokens.css |
4 | 4 | 0 |
platform/frontend/tests/thinking-steps.test.ts |
1 | 2 | -1 |
scripts/make_trap.sh |
4 | 1 | 3 |
specs/hydration-email-detail-cache-spec.md |
85 | 0 | 85 |
specs/inbox-sync-architecture-v2.md |
96 | 0 | 96 |
Verify this commit:
git show --stat ae839eb339beb2e514b618588c7ad21bd728e78eFull Hash: f610603f015face23effc3efc9d7f6645529183a
Short Hash: f610603
Timestamp: 2025-11-11 13:25:11 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 37 files changed, 4844 insertions(+), 280 deletions(-), net: 4564 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
81 | 21 | 60 |
docs/PUBSUB_SETUP.md |
65 | 0 | 65 |
logs/platform/backend/dev.log |
3624 | 0 | 3624 |
logs/platform/backend/run-20251111-124343.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125000.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125418.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125517.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125556.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125614.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-125748.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-131303.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-132124.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-132218.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-124343.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125000.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125418.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125517.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125556.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125614.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-125748.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-131303.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-132124.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-132218.yaml |
17 | 0 | 17 |
platform/backend/api/developer.py |
87 | 1 | 86 |
platform/backend/api/gmail.py |
34 | 3 | 31 |
platform/backend/api/webhooks.py |
3 | 3 | 0 |
platform/backend/app/config/__init__.py |
6 | 0 | 6 |
platform/backend/scripts/get_ngrok_url.py |
69 | 0 | 69 |
platform/backend/scripts/setup_gmail_watches.py |
115 | 0 | 115 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
108 | 172 | -64 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
52 | 55 | -3 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
28 | 21 | 7 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
2 | 4 | -2 |
platform/frontend/hooks/useEnsureEmailLoaded.ts |
37 | 0 | 37 |
platform/frontend/hooks/useTriagePolling.ts |
133 | 0 | 133 |
platform/frontend/lib/email-links.ts |
27 | 0 | 27 |
platform/frontend/lib/stableTriageSignature.ts |
33 | 0 | 33 |
Verify this commit:
git show --stat f610603f015face23effc3efc9d7f6645529183aFull Hash: b2b74531f359db2487fa9352f23d689abae927f9
Short Hash: b2b7453
Timestamp: 2025-11-11 12:43:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 55 files changed, 49943 insertions(+), 280 deletions(-), net: 49663 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/AGENTIC-REWRITE-SUMMARY.md |
242 | 0 | 242 |
docs/agentic-loop-rewrite-complete.md |
838 | 0 | 838 |
docs/agentic-rewrite-status.md |
182 | 0 | 182 |
docs/phase-1.3-orchestrator-refactor-plan.md |
291 | 0 | 291 |
docs/phase-2-gmail-tools-consolidation.md |
402 | 0 | 402 |
docs/phase-2.3-gmail-api-deprecation.md |
163 | 0 | 163 |
docs/phase-3.1-action-boxes-complete.md |
295 | 0 | 295 |
docs/phase-3.2-permission-system-complete.md |
616 | 0 | 616 |
docs/phase-3.3-feature-parity-verified.md |
586 | 0 | 586 |
docs/phase-4.1-cost-tracking-complete.md |
599 | 0 | 599 |
docs/phase-5.1-nightly-eval-loop-complete.md |
556 | 0 | 556 |
docs/phase-5.2-feature-flags-complete.md |
601 | 0 | 601 |
logs/platform/backend/dev.log |
36232 | 0 | 36232 |
logs/platform/backend/run-20251111-115917.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-120004.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-120432.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-120632.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-120805.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-121455.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-121845.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-121910.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-123610.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-124153.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-115917.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-120004.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-120432.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-120632.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-120805.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-121455.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-121845.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-121910.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-123610.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-124153.yaml |
17 | 0 | 17 |
platform/backend/app/agent_engine/_archive_old_agentic_code/specialized_agents_v1_20251111.py |
4217 | 0 | 4217 |
platform/backend/app/agent_engine/agent_constants.py |
410 | 0 | 410 |
platform/backend/app/agent_engine/orchestrator.py |
325 | 38 | 287 |
platform/backend/app/agent_engine/specialized_agents.py |
7 | 129 | -122 |
platform/backend/app/agent_engine/thinking_config.py |
37 | 8 | 29 |
platform/backend/app/config/__init__.py |
4 | 0 | 4 |
platform/backend/app/models/__init__.py |
10 | 0 | 10 |
platform/backend/app/models/agent_evaluation.py |
179 | 0 | 179 |
platform/backend/app/models/feature_flag.py |
102 | 0 | 102 |
platform/backend/app/observability/llm_usage_tracker.py |
28 | 2 | 26 |
platform/backend/app/observability/sanitizer.py |
404 | 0 | 404 |
platform/backend/app/observability/structlog_setup.py |
80 | 24 | 56 |
platform/backend/app/services/agent_evaluation_service.py |
471 | 0 | 471 |
platform/backend/app/services/feature_flag_service.py |
380 | 0 | 380 |
platform/backend/app/tools/action_box_tool.py |
132 | 0 | 132 |
platform/backend/app/tools/arcade_dynamic.py |
5 | 27 | -22 |
platform/backend/celery_app.py |
66 | 0 | 66 |
platform/backend/logs/app.log.1 |
638 | 0 | 638 |
platform/backend/plume_profile_latest.json |
46 | 46 | 0 |
platform/backend/scripts/enable_single_agent_flag.py |
115 | 0 | 115 |
platform/backend/tests/test_sanitizer.py |
255 | 0 | 255 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
89 | 6 | 83 |
Verify this commit:
git show --stat b2b74531f359db2487fa9352f23d689abae927f9Full Hash: ee1fe602f884696442a5f90c7913b4a1be3eaba1
Short Hash: ee1fe60
Timestamp: 2025-11-11 12:04:21 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Add OpenAI Agents SDK tracing support for cleaner debug logs
Summary: 2 files changed, 78 insertions(+), 12 deletions(-), net: 66 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
73 | 11 | 62 |
platform/backend/app/config/__init__.py |
5 | 1 | 4 |
Verify this commit:
git show --stat ee1fe602f884696442a5f90c7913b4a1be3eaba1Full Hash: c67c13d08b6963538bd205a1ecfd9065afb4116c
Short Hash: c67c13d
Timestamp: 2025-11-11 10:56:39 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 11 files changed, 47347 insertions(+), 22977 deletions(-), net: 24370 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
README.md |
778 | 96 | 682 |
docs/berthier/claude.md |
3330 | 0 | 3330 |
docs/berthier/guides.md |
3223 | 0 | 3223 |
docs/berthier/openai.md |
4285 | 0 | 4285 |
docs/specs/claude-single-agent-rewrite.md |
141 | 0 | 141 |
logs/platform/backend/dev.log |
3752 | 0 | 3752 |
platform/backend/logs/app.log.1 |
3106 | 5461 | -2355 |
platform/backend/logs/app.log.2 |
1271 | 2312 | -1041 |
platform/backend/logs/app.log.3 |
19688 | 14907 | 4781 |
platform/backend/logs/app.log.4 |
5461 | 12 | 5449 |
platform/backend/logs/app.log.5 |
2312 | 189 | 2123 |
Verify this commit:
git show --stat c67c13d08b6963538bd205a1ecfd9065afb4116cFull Hash: cbac63fdca14190697f24181def3105bea2b5142
Short Hash: cbac63f
Timestamp: 2025-11-11 09:46:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Enhance fixes: filter private messages, improve action box preservation, add CSS for non-blocking UI
Summary: 4 files changed, 24681 insertions(+), 5 deletions(-), net: 24676 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
24648 | 0 | 24648 |
platform/backend/api/inbox.py |
5 | 2 | 3 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
12 | 3 | 9 |
platform/frontend/app/globals.css |
16 | 0 | 16 |
Verify this commit:
git show --stat cbac63fdca14190697f24181def3105bea2b5142Full Hash: 81e7debf0ed4cbebe76458eea951bb4f6983f47c
Short Hash: 81e7deb
Timestamp: 2025-11-11 09:27:48 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix three critical issues: SyntaxError, action box preservation, and UI blocking
Summary: 7 files changed, 4611 insertions(+), 15 deletions(-), net: 4596 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
logs/platform/backend/dev.log |
4533 | 0 | 4533 |
logs/platform/backend/run-20251111-092531.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-092531.yaml |
17 | 0 | 17 |
platform/backend/api/inbox.py |
31 | 2 | 29 |
platform/backend/app/agent_engine/specialized_agents.py |
11 | 13 | -2 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ChainOfThoughtDisplay.tsx |
1 | 0 | 1 |
Verify this commit:
git show --stat 81e7debf0ed4cbebe76458eea951bb4f6983f47cFull Hash: 0a6d98a54e1ba31f0d63e113f15f3a90f99a0174
Short Hash: 0a6d98a
Timestamp: 2025-11-11 09:17:35 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 35 files changed, 82721 insertions(+), 4 deletions(-), net: 82717 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.gitignore |
7 | 4 | 3 |
Drive/1-Projects/nova/logs/platform/backend/dev.log |
0 | 0 | 0 |
docs/progress/platform/logs/logs3.md |
484 | 0 | 484 |
logs/platform/backend/dev.log |
24553 | 0 | 24553 |
logs/platform/backend/run-20251111-002810.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-003301.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-003649.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-003926.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-004651.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-005029.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-005156.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-090750.yaml |
17 | 0 | 17 |
logs/platform/backend/run-20251111-090837.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-002810.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-003301.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-003649.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-003926.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-004651.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-005029.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-005156.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-090750.yaml |
17 | 0 | 17 |
logs/run-manifests/run-20251111-090837.yaml |
17 | 0 | 17 |
platform/backend/logs/.gitignore |
3 | 0 | 3 |
platform/backend/logs/app.log.1 |
5461 | 0 | 5461 |
platform/backend/logs/app.log.2 |
2312 | 0 | 2312 |
platform/backend/logs/app.log.2025-11-08 |
7035 | 0 | 7035 |
platform/backend/logs/app.log.3 |
14907 | 0 | 14907 |
platform/backend/logs/app.log.4 |
12 | 0 | 12 |
platform/backend/logs/app.log.5 |
189 | 0 | 189 |
platform/backend/logs/errors.log.1 |
25987 | 0 | 25987 |
platform/backend/logs/errors.log.2 |
133 | 0 | 133 |
platform/backend/logs/errors.log.3 |
38 | 0 | 38 |
platform/backend/logs/errors.log.4 |
647 | 0 | 647 |
platform/backend/logs/errors.log.5 |
647 | 0 | 647 |
platform/backend/logs/platform/backend/dev.log |
0 | 0 | 0 |
Verify this commit:
git show --stat 0a6d98a54e1ba31f0d63e113f15f3a90f99a0174Full Hash: 880f497496ffa937bd545e40d066baaac18cd397
Short Hash: 880f497
Timestamp: 2025-11-11 09:16:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 3 files changed, 325 insertions(+), 0 deletions(-), net: 325 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.gitignore |
1 | 0 | 1 |
.gitignore.bak |
161 | 0 | 161 |
.gitignore.bak2 |
163 | 0 | 163 |
Verify this commit:
git show --stat 880f497496ffa937bd545e40d066baaac18cd397Full Hash: c38f6fc4e1f5f62ed58f8acf37e4a1ba138e2317
Short Hash: c38f6fc
Timestamp: 2025-11-11 09:16:44 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 1 files changed, 2 insertions(+), 0 deletions(-), net: 2 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.gitignore |
2 | 0 | 2 |
Verify this commit:
git show --stat c38f6fc4e1f5f62ed58f8acf37e4a1ba138e2317Full Hash: 6d6e72aaea75f808e39cdd3f9da49fbe3948e870
Short Hash: 6d6e72a
Timestamp: 2025-11-11 09:16:11 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 121 files changed, 93 insertions(+), 253 deletions(-), net: -160 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.gitignore |
7 | 0 | 7 |
platform/backend/api/inbox.py |
23 | 6 | 17 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
19 | 5 | 14 |
platform/backend/app/agent_engine/specialized_agents.py |
30 | 18 | 12 |
platform/backend/app/agent_engine/triage_agent.py |
7 | 4 | 3 |
platform/backend/app/agent_engine/triage_agent_v3.py |
7 | 4 | 3 |
platform/backend/mlruns/0/meta.yaml |
0 | 7 | -7 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/trace_info.yaml |
0 | 6 | -6 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/request_metadata/mlflow.trace_schema.version |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.artifactLocation |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.source.name |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.source.type |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.traceName |
0 | 1 | -1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/trace_info.yaml |
0 | 6 | -6 |
Verify this commit:
git show --stat 6d6e72aaea75f808e39cdd3f9da49fbe3948e870Full Hash: 48c4fbe7674b94e1f3bae58caaf4bc0e57128a63
Short Hash: 48c4fbe
Timestamp: 2025-11-11 00:51:32 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 157 files changed, 9090 insertions(+), 1320 deletions(-), net: 7770 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
CELERY_ISSUE_EXPLAINED.md |
1 | 1 | 0 |
GMAIL_RATE_LIMIT_FINAL_REPORT.md |
3 | 3 | 0 |
Makefile |
98 | 13 | 85 |
OPPORTUNISTIC_RATE_LIMIT_CLEARING.md |
1 | 1 | 0 |
RATE_LIMIT_ISSUE_CLOSED.md |
1 | 1 | 0 |
docs/architecture/agent-system-architecture.md |
1466 | 0 | 1466 |
docs/architecture/vector-search-integration.md |
43 | 216 | -173 |
platform/backend/api/ai_prompts.py |
12 | 8 | 4 |
platform/backend/api/inbox.py |
111 | 90 | 21 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
4444 | 185 | 4259 |
platform/backend/app/agent_engine/anthropic_wrapper.py |
243 | 0 | 243 |
platform/backend/app/agent_engine/guardrails/prompts.py |
3 | 0 | 3 |
platform/backend/app/agent_engine/orchestrator.py |
193 | 97 | 96 |
platform/backend/app/agent_engine/session_manager.py |
6 | 6 | 0 |
platform/backend/app/agent_engine/specialized_agents.py |
95 | 19 | 76 |
platform/backend/app/agent_engine/thinking_config.py |
38 | 0 | 38 |
platform/backend/app/agent_engine/thinking_utils.py |
6 | 1 | 5 |
platform/backend/app/config/__init__.py |
9 | 2 | 7 |
platform/backend/app/observability/llm_usage_tracker.py |
91 | 1 | 90 |
platform/backend/app/observability/structlog_setup.py |
35 | 2 | 33 |
platform/backend/app/services/ai_memory_service.py |
21 | 13 | 8 |
platform/backend/app/services/conversation_service.py |
125 | 0 | 125 |
platform/backend/app/services/deep_context_service.py |
376 | 0 | 376 |
platform/backend/app/services/gmail_rate_limiter_shared.py |
1 | 0 | 1 |
platform/backend/app/tools/deep_context.py |
189 | 0 | 189 |
platform/backend/app/tools/memory_tool.py |
4 | 2 | 2 |
platform/backend/app/tools/tool_descriptions.py |
6 | 0 | 6 |
platform/backend/main.py |
45 | 11 | 34 |
platform/backend/migrations/094_add_source_to_memories.sql |
23 | 0 | 23 |
platform/backend/mlruns/0/meta.yaml |
7 | 0 | 7 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/3483e04374a641b7bc4e762074a05e52/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/4601aa4069a34aea9a1c76f4d549ab54/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/532893e6e0aa4ca3a7b2df4c7ce66b07/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/79d437879169454cae18c54fd31d0976/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7a093100b6124fc4a6b7affc3f41b20a/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ec07810ca454cab917dfe92c6d30882/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/7ef583e5f4b34f78b9e7349b95734260/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/83dd94cbe7e74059a32dcb9f1dd284b1/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8c47cf565067489bb1e65de32969a9df/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/8dc7dffb3619439cbf16f228a30b4c77/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/a06db71008464c4ead900c78ac9be01e/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/b16b03c6ff6c45b9a3e8ce24c57cd8b7/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/bded2d799dbb4068a90ca11cd7b88942/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/c62df604a7c24e06851eea8d2675d5e5/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/d514b12c061d47b1afa329cb1f0f8ea1/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/dc5ad2cc8f61497ba0c4dd5f18e37605/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/e71965e8af4341d190f94eeaf166e798/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f375bf4723ec4695bfe3d5d37fbacf7c/trace_info.yaml |
6 | 0 | 6 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/request_metadata/mlflow.trace_schema.version |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.artifactLocation |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.source.name |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.source.type |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/tags/mlflow.traceName |
1 | 0 | 1 |
platform/backend/mlruns/0/traces/f4975224d1d646e3820cdbff14f9e567/trace_info.yaml |
6 | 0 | 6 |
platform/backend/poetry.lock |
894 | 47 | 847 |
platform/backend/pyproject.toml |
1 | 0 | 1 |
platform/backend/tests/unit/test_memory_tool.py |
3 | 0 | 3 |
platform/backend/tests/unit/test_thinking_block_formatting.py |
119 | 0 | 119 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
83 | 83 | 0 |
platform/frontend/app/dashboard/settings/memories/page.tsx |
7 | 3 | 4 |
platform/frontend/components/icons/MoonIcon.tsx |
2 | 0 | 2 |
platform/frontend/components/inbox/ChainOfThoughtDisplay.tsx |
43 | 0 | 43 |
platform/frontend/components/inbox/InboxPlanB.tsx |
2 | 5 | -3 |
platform/frontend/components/inbox/__tests__/ChainOfThoughtDisplay.test.tsx |
25 | 510 | -485 |
platform/frontend/components/ui/tooltip.tsx |
2 | 0 | 2 |
platform/frontend/public/favicon-dev.svg |
2 | 0 | 2 |
platform/frontend/public/favicon-local.svg |
2 | 0 | 2 |
Verify this commit:
git show --stat 48c4fbe7674b94e1f3bae58caaf4bc0e57128a63Full Hash: 31665824971a71a5bdce49742113c304068e63a4
Short Hash: 3166582
Timestamp: 2025-11-10 23:26:17 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 6 files changed, 392 insertions(+), 278 deletions(-), net: 114 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
109 | 215 | -106 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
19 | 30 | -11 |
platform/backend/app/agent_engine/session_manager.py |
1 | 30 | -29 |
platform/backend/app/agent_engine/thinking_utils.py |
260 | 0 | 260 |
platform/backend/app/config/__init__.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
2 | 2 | 0 |
Verify this commit:
git show --stat 31665824971a71a5bdce49742113c304068e63a4Full Hash: 2aeb545179f268dba19c0edc51a8f38ed74d4faa
Short Hash: 2aeb545
Timestamp: 2025-11-10 23:13:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 7 files changed, 217 insertions(+), 42 deletions(-), net: 175 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.bak |
1 | 1 | 0 |
.env.local.bak |
1 | 1 | 0 |
platform/backend/api/inbox.py |
99 | 23 | 76 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
75 | 5 | 70 |
platform/backend/app/agent_engine/validation.py |
14 | 8 | 6 |
platform/backend/app/config/__init__.py |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
26 | 3 | 23 |
Verify this commit:
git show --stat 2aeb545179f268dba19c0edc51a8f38ed74d4faaFull Hash: 1974b1c89e98271a39702c02b520ff410d6736c2
Short Hash: 1974b1c
Timestamp: 2025-11-10 23:00:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 8 files changed, 812 insertions(+), 215 deletions(-), net: 597 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
33 | 4 | 29 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
501 | 140 | 361 |
platform/backend/app/agent_engine/session_manager.py |
104 | 28 | 76 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
125 | 8 | 117 |
platform/frontend/components/command-palette/CommandPalette.tsx |
39 | 32 | 7 |
platform/frontend/components/inbox/InboxPlanB.tsx |
4 | 3 | 1 |
platform/frontend/hooks/useFeatureFlags.tsx |
4 | 0 | 4 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
Verify this commit:
git show --stat 1974b1c89e98271a39702c02b520ff410d6736c2Full Hash: d40cbe04ece02164313ff00ecd31767f0404564a
Short Hash: d40cbe0
Timestamp: 2025-11-10 22:30:01 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 36 files changed, 3919 insertions(+), 633 deletions(-), net: 3286 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/architecture/vector-search-integration.md |
218 | 0 | 218 |
platform/backend/MEMORY_IMPLEMENTATION_AUDIT.md |
472 | 0 | 472 |
platform/backend/api/ai_prompts.py |
4 | 3 | 1 |
platform/backend/api/inbox.py |
91 | 1 | 90 |
platform/backend/app/agent_engine/agents.md |
207 | 0 | 207 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
589 | 159 | 430 |
platform/backend/app/agent_engine/orchestrator.py |
195 | 9 | 186 |
platform/backend/app/agent_engine/session_manager.py |
143 | 8 | 135 |
platform/backend/app/agent_engine/specialized_agents.py |
368 | 77 | 291 |
platform/backend/app/prompts/agent_instructions.py |
53 | 0 | 53 |
platform/backend/app/prompts/inbox_assistant.py |
3 | 1 | 2 |
platform/backend/app/services/ai_memory_service.py |
101 | 20 | 81 |
platform/backend/app/tools/memory_tool.py |
77 | 7 | 70 |
platform/backend/app/tools/vector_search_tool.py |
223 | 0 | 223 |
platform/backend/main.py |
90 | 0 | 90 |
platform/backend/migrations/090_add_created_by_to_memories.sql |
19 | 0 | 19 |
platform/backend/tests/unit/test_memory_tool.py |
51 | 0 | 51 |
platform/backend/tests/unit/test_thinking_block_formatting.py |
187 | 0 | 187 |
platform/frontend/AUDIT_CHAIN_OF_THOUGHT.md |
126 | 0 | 126 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
67 | 32 | 35 |
platform/frontend/app/dashboard/settings/memories/page.tsx |
4 | 4 | 0 |
platform/frontend/components/command-palette/CommandPalette.tsx |
40 | 30 | 10 |
platform/frontend/components/inbox/AssistantPane.tsx |
74 | 34 | 40 |
platform/frontend/components/inbox/ChainOfThoughtDisplay.tsx |
81 | 40 | 41 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
45 | 2 | 43 |
platform/frontend/components/inbox/DensityToggle.tsx |
19 | 11 | 8 |
platform/frontend/components/inbox/InboxPlanB.tsx |
53 | 8 | 45 |
platform/frontend/components/inbox/MarkdownRenderer.tsx |
12 | 0 | 12 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
39 | 6 | 33 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
18 | 11 | 7 |
platform/frontend/components/inbox/TopbarIconButton.tsx |
23 | 7 | 16 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
68 | 45 | 23 |
platform/frontend/components/inbox/ViewSwitcher.tsx |
19 | 11 | 8 |
platform/frontend/components/inbox/__tests__/ChainOfThoughtDisplay.test.tsx |
134 | 107 | 27 |
platform/frontend/hooks/useFeatureFlags.tsx |
4 | 0 | 4 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
Verify this commit:
git show --stat d40cbe04ece02164313ff00ecd31767f0404564aFull Hash: e176fa35701eeba7a6ae089415f1dfa42e5d5b13
Short Hash: e176fa3
Timestamp: 2025-11-10 21:03:51 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 58 files changed, 1674 insertions(+), 963 deletions(-), net: 711 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.bak |
215 | 0 | 215 |
.env.local.bak |
3 | 1 | 2 |
EMAIL_CONTENT_LOGGING_SECURITY.md |
1 | 0 | 1 |
Makefile |
1 | 1 | 0 |
docs/investigations/queue-and-chain-of-thought-issues.md |
1 | 0 | 1 |
docs/roadmap/email/v1/local/FULL_INBOX_SYNC_ONEPAGER.md |
1 | 0 | 1 |
docs/roadmap/email/v1/local/GMAIL_API_OPTIMIZATION_GUIDE.md |
1 | 0 | 1 |
docs/roadmap/email/v1/local/INBOX_SYNC_ARCHITECTURE_COMPLETE.md |
1 | 0 | 1 |
docs/roadmap/email/v2/action-boxes-first-principles.md |
1 | 0 | 1 |
docs/roadmap/email/v2/markdown-first-principles.md |
1 | 0 | 1 |
platform/backend/api/inbox.py |
9 | 0 | 9 |
platform/backend/api/webhooks.py |
43 | 81 | -38 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
175 | 42 | 133 |
platform/backend/app/agent_engine/orchestrator.py |
75 | 19 | 56 |
platform/backend/app/agent_engine/specialized_agents.py |
3 | 1 | 2 |
platform/backend/app/models/auto_approval_rule.py |
1 | 0 | 1 |
platform/backend/app/services/auto_approval_service.py |
1 | 0 | 1 |
platform/backend/app/services/gmail_rate_limiter_shared.py |
1 | 0 | 1 |
platform/backend/check_column.py |
1 | 0 | 1 |
platform/backend/enable_pgvector.py |
1 | 0 | 1 |
platform/backend/migrations/078_create_auto_approval_rules.sql |
1 | 0 | 1 |
platform/backend/migrations/080_add_email_counts_to_sync_jobs.sql |
1 | 0 | 1 |
platform/backend/migrations/081_create_writing_profile_chunks.sql |
1 | 0 | 1 |
platform/backend/migrations/083_add_vectorized_emails_to_sync_jobs.sql |
1 | 0 | 1 |
platform/backend/migrations/084_add_embedded_emails_to_sync_jobs.sql |
1 | 0 | 1 |
platform/backend/migrations/086_enable_pgvector.sql |
1 | 0 | 1 |
platform/backend/migrations/088_add_comprehensive_email_embedding_fields.sql |
1 | 0 | 1 |
platform/backend/migrations/089_add_sync_job_id_to_thread_cache.sql |
1 | 0 | 1 |
platform/backend/scripts/check_email_logging.py |
1 | 0 | 1 |
platform/backend/scripts/fix_gmail_sync.py |
1 | 0 | 1 |
platform/backend/scripts/get_tone_summary.py |
1 | 0 | 1 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
184 | 54 | 130 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AssistantPane.tsx |
212 | 369 | -157 |
platform/frontend/components/inbox/EmailDetail.tsx |
11 | 3 | 8 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
126 | 77 | 49 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
4 | 37 | -33 |
platform/frontend/components/inbox/HeaderControlGutterLeft.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
4 | 45 | -41 |
platform/frontend/components/inbox/HelpToggleButton.tsx |
4 | 4 | 0 |
platform/frontend/components/inbox/InboxPlanB.tsx |
100 | 72 | 28 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/MarkdownRenderer.tsx |
8 | 6 | 2 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
25 | 4 | 21 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
4 | 1 | 3 |
platform/frontend/components/inbox/SearchInput.tsx |
47 | 38 | 9 |
platform/frontend/components/inbox/TemplatesPanel.tsx |
23 | 4 | 19 |
platform/frontend/components/inbox/ThreadRow.tsx |
139 | 81 | 58 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
23 | 20 | 3 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
website/app/terms/page.tsx |
198 | 0 | 198 |
website/public/berthier-privacy-120x120.png |
- | - | N/A (binary) |
website/public/plume-logo-120x120.png |
- | - | N/A (binary) |
website/public/plume-logo.png |
- | - | N/A (binary) |
website/public/plume-logo.svg |
8 | 0 | 8 |
website/public/test.png |
- | - | N/A (binary) |
Verify this commit:
git show --stat e176fa35701eeba7a6ae089415f1dfa42e5d5b13Full Hash: 5a6a1070d2096520def76a8f8c3224f8ebe52f83
Short Hash: 5a6a107
Timestamp: 2025-11-10 19:09:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix queue handling logic: pass session_id when starting next tasks
Summary: 8 files changed, 184 insertions(+), 23 deletions(-), net: 161 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/chat.py |
36 | 4 | 32 |
platform/backend/api/inbox.py |
42 | 5 | 37 |
platform/backend/app/agent_engine/orchestrator.py |
32 | 2 | 30 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
20 | 0 | 20 |
platform/frontend/components/inbox/AssistantPane.tsx |
39 | 0 | 39 |
platform/frontend/components/inbox/ComposeModal.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
13 | 10 | 3 |
platform/frontend/styles/tokens.css |
1 | 1 | 0 |
Verify this commit:
git show --stat 5a6a1070d2096520def76a8f8c3224f8ebe52f83Full Hash: a3e9378f986428a9d2b5e8696bda9585a6ef9461
Short Hash: a3e9378
Timestamp: 2025-11-10 19:05:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 24 files changed, 1193 insertions(+), 599 deletions(-), net: 594 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
42 | 10 | 32 |
platform/backend/api/webhooks.py |
61 | 52 | 9 |
platform/backend/app/config/__init__.py |
1 | 0 | 1 |
platform/backend/app/services/task_queue_service.py |
56 | 21 | 35 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
157 | 98 | 59 |
platform/frontend/app/dashboard/settings/page.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/AssistantPane.tsx |
364 | 223 | 141 |
platform/frontend/components/inbox/ChipBadge.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/ComposeButton.tsx |
30 | 31 | -1 |
platform/frontend/components/inbox/ComposeCard.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/ComposeModal.tsx |
4 | 1 | 3 |
platform/frontend/components/inbox/InboxDropdown.tsx |
2 | 6 | -4 |
platform/frontend/components/inbox/InboxPlanB.tsx |
25 | 6 | 19 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
15 | 12 | 3 |
platform/frontend/components/inbox/MarkdownEditor.tsx |
2 | 1 | 1 |
platform/frontend/components/inbox/QueueStatusIndicator.tsx |
18 | 4 | 14 |
platform/frontend/components/inbox/ReplyComposer.tsx |
5 | 1 | 4 |
platform/frontend/components/inbox/SearchInput.tsx |
13 | 11 | 2 |
platform/frontend/components/inbox/TemplatesPanel.tsx |
90 | 59 | 31 |
platform/frontend/components/inbox/ThreadRow.tsx |
8 | 6 | 2 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/WhatCanIDoModal.tsx |
176 | 0 | 176 |
platform/frontend/lib/api-client.ts |
111 | 51 | 60 |
platform/frontend/lib/markdown.ts |
7 | 1 | 6 |
Verify this commit:
git show --stat a3e9378f986428a9d2b5e8696bda9585a6ef9461Full Hash: ec5ed01232a65f18cd581ff8f452ebb3cd6b3144
Short Hash: ec5ed01
Timestamp: 2025-11-10 18:38:59 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix infinite loop in compose button and email opening bug
Summary: 11 files changed, 648 insertions(+), 528 deletions(-), net: 120 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/webhooks.py |
175 | 76 | 99 |
platform/backend/app/services/gmail_watch_service.py |
27 | 11 | 16 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1 | 7 | -6 |
platform/frontend/components/inbox/AvatarMenu.tsx |
2 | 29 | -27 |
platform/frontend/components/inbox/ChipBadge.tsx |
9 | 3 | 6 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
11 | 5 | 6 |
platform/frontend/components/inbox/ConciergeGreeting.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
6 | 6 | 0 |
platform/frontend/components/inbox/InboxPlanB.tsx |
393 | 19 | 374 |
platform/frontend/components/inbox/ThreadRow.tsx |
20 | 40 | -20 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
3 | 331 | -328 |
Verify this commit:
git show --stat ec5ed01232a65f18cd581ff8f452ebb3cd6b3144Full Hash: 289739c4b1976fc152e6c08ad3a42acd42fe9786
Short Hash: 289739c
Timestamp: 2025-11-10 18:16:50 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: WIP: Inbox UI improvements - top bar and component updates
Summary: 7 files changed, 581 insertions(+), 139 deletions(-), net: 442 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
34 | 0 | 34 |
platform/frontend/components/inbox/ComposeButton.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
6 | 13 | -7 |
platform/frontend/components/inbox/InboxPlanB.tsx |
19 | 0 | 19 |
platform/frontend/components/inbox/SearchInput.tsx |
102 | 42 | 60 |
platform/frontend/components/inbox/ThreadRow.tsx |
11 | 21 | -10 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
408 | 62 | 346 |
Verify this commit:
git show --stat 289739c4b1976fc152e6c08ad3a42acd42fe9786Full Hash: 07948e0ce2f152db8ba58b6692c98ff326f0c38e
Short Hash: 07948e0
Timestamp: 2025-11-10 18:03:10 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix Gmail Pub/Sub security and infrastructure issues
Summary: 18 files changed, 536 insertions(+), 425 deletions(-), net: 111 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/gmail.py |
14 | 0 | 14 |
platform/backend/api/webhooks.py |
41 | 23 | 18 |
platform/backend/app/models/gmail_credential.py |
3 | 0 | 3 |
platform/backend/app/services/gmail_token_store.py |
15 | 1 | 14 |
platform/backend/app/services/gmail_watch_service.py |
83 | 0 | 83 |
platform/backend/celery_app.py |
46 | 5 | 41 |
platform/backend/migrations/093_add_gmail_watch_security_fields.sql |
22 | 0 | 22 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AvatarMenu.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ChatHistoryModal.tsx |
21 | 9 | 12 |
platform/frontend/components/inbox/ComposeButton.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ConciergeGreeting.tsx |
8 | 6 | 2 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
43 | 39 | 4 |
platform/frontend/components/inbox/InboxPlanB.tsx |
51 | 160 | -109 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
24 | 110 | -86 |
platform/frontend/components/inbox/SearchInput.tsx |
11 | 1 | 10 |
platform/frontend/components/inbox/ThreadRow.tsx |
45 | 33 | 12 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
106 | 36 | 70 |
Verify this commit:
git show --stat 07948e0ce2f152db8ba58b6692c98ff326f0c38eFull Hash: 2590296b2282494bdaeeb9d478e1cd649220cdf8
Short Hash: 2590296
Timestamp: 2025-11-10 17:50:13 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: WIP: Inbox improvements - attachment badges, hover states, and sync service updates
Summary: 9 files changed, 609 insertions(+), 88 deletions(-), net: 521 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/gmail.py |
28 | 0 | 28 |
platform/backend/api/webhooks.py |
74 | 11 | 63 |
platform/backend/app/api/oauth.py |
30 | 0 | 30 |
platform/backend/app/services/inbox_sync_service.py |
32 | 0 | 32 |
platform/backend/celery_app.py |
276 | 0 | 276 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
35 | 3 | 32 |
platform/frontend/components/inbox/AttachmentBadge.tsx |
56 | 0 | 56 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
37 | 37 | 0 |
platform/frontend/components/inbox/ThreadRow.tsx |
41 | 37 | 4 |
Verify this commit:
git show --stat 2590296b2282494bdaeeb9d478e1cd649220cdf8Full Hash: 9c18dfb2ecda517514d98f233abe42b4fd8157c5
Short Hash: 9c18dfb
Timestamp: 2025-11-10 17:41:46 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix PlanB inbox section header width alignment and formatting
Summary: 7 files changed, 376 insertions(+), 194 deletions(-), net: 182 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
14 | 1 | 13 |
platform/frontend/components/inbox/InboxPlanB.tsx |
75 | 48 | 27 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
6 | 1 | 5 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
132 | 63 | 69 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
9 | 1 | 8 |
platform/frontend/components/inbox/ThreadRow.tsx |
32 | 5 | 27 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
108 | 75 | 33 |
Verify this commit:
git show --stat 9c18dfb2ecda517514d98f233abe42b4fd8157c5Full Hash: 2fc607ade920535c3ff4ac7453f87d4e2630c3b3
Short Hash: 2fc607a
Timestamp: 2025-11-10 17:14:22 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 93 files changed, 4456 insertions(+), 1535 deletions(-), net: 2921 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.bak |
213 | 0 | 213 |
.env.local.bak2 |
213 | 0 | 213 |
.env.local.example |
1 | 1 | 0 |
EMAIL_CONTENT_LOGGING_SECURITY.md |
3 | 0 | 3 |
Makefile |
10 | 2 | 8 |
TOP_BAR_POLISH_CHANGES.md |
221 | 0 | 221 |
docs/architecture/voyage-vector-pipeline.md |
2 | 2 | 0 |
docs/investigations/queue-and-chain-of-thought-issues.md |
3 | 0 | 3 |
docs/roadmap/email/v1/local/FULL_INBOX_SYNC_ONEPAGER.md |
3 | 0 | 3 |
docs/roadmap/email/v1/local/GMAIL_API_OPTIMIZATION_GUIDE.md |
3 | 0 | 3 |
docs/roadmap/email/v1/local/INBOX_SYNC_ARCHITECTURE_COMPLETE.md |
3 | 0 | 3 |
docs/roadmap/email/v1/local/specs/features/codex-aarch64-ap-plan.md |
539 | 0 | 539 |
docs/roadmap/email/v2/action-boxes-first-principles.md |
3 | 0 | 3 |
docs/roadmap/email/v2/markdown-first-principles.md |
3 | 0 | 3 |
docs/roadmap/platform/voyage-pinecone-integration-plan.md |
12 | 13 | -1 |
docs/setup/voyage-embeddings-setup.md |
4 | 4 | 0 |
docs/setup/voyage-pinecone-configuration.md |
10 | 10 | 0 |
nova.code-workspace |
2 | 0 | 2 |
platform/backend/api/inbox.py |
174 | 210 | -36 |
platform/backend/api/webhooks.py |
152 | 2 | 150 |
platform/backend/app/cache/cache_config.py |
1 | 1 | 0 |
platform/backend/app/config/__init__.py |
8 | 8 | 0 |
platform/backend/app/models/auto_approval_rule.py |
3 | 0 | 3 |
platform/backend/app/models/gmail_credential.py |
4 | 0 | 4 |
platform/backend/app/models/thread_cache.py |
3 | 3 | 0 |
platform/backend/app/services/auto_approval_service.py |
3 | 0 | 3 |
platform/backend/app/services/email_vectorization_service.py |
122 | 23 | 99 |
platform/backend/app/services/embedding_backends.py |
3 | 3 | 0 |
platform/backend/app/services/gmail_api.py |
75 | 0 | 75 |
platform/backend/app/services/gmail_rate_limiter_shared.py |
3 | 0 | 3 |
platform/backend/app/services/gmail_service.py |
119 | 5 | 114 |
platform/backend/app/services/gmail_watch_service.py |
248 | 0 | 248 |
platform/backend/app/services/inbox_sync_service.py |
53 | 10 | 43 |
platform/backend/app/services/pinecone_client.py |
2 | 2 | 0 |
platform/backend/check_column.py |
3 | 0 | 3 |
platform/backend/enable_pgvector.py |
3 | 0 | 3 |
platform/backend/migrations/078_create_auto_approval_rules.sql |
3 | 0 | 3 |
platform/backend/migrations/080_add_email_counts_to_sync_jobs.sql |
3 | 0 | 3 |
platform/backend/migrations/081_create_writing_profile_chunks.sql |
3 | 0 | 3 |
platform/backend/migrations/083_add_vectorized_emails_to_sync_jobs.sql |
3 | 0 | 3 |
platform/backend/migrations/084_add_embedded_emails_to_sync_jobs.sql |
3 | 0 | 3 |
platform/backend/migrations/086_enable_pgvector.sql |
3 | 0 | 3 |
platform/backend/migrations/088_add_comprehensive_email_embedding_fields.sql |
3 | 0 | 3 |
platform/backend/migrations/089_add_sync_job_id_to_thread_cache.sql |
3 | 0 | 3 |
platform/backend/migrations/090_update_email_embedding_dimension_to_1024.sql |
39 | 0 | 39 |
platform/backend/migrations/091_revert_email_embedding_dimension_to_512.sql |
27 | 0 | 27 |
platform/backend/migrations/092_add_gmail_watch_fields.sql |
15 | 0 | 15 |
platform/backend/scripts/check_email_logging.py |
3 | 0 | 3 |
platform/backend/scripts/fix_gmail_sync.py |
3 | 0 | 3 |
platform/backend/scripts/get_tone_summary.py |
3 | 0 | 3 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
221 | 77 | 144 |
platform/frontend/app/dashboard/inbox/inbox.css |
23 | 0 | 23 |
platform/frontend/app/dashboard/settings/page.tsx |
113 | 44 | 69 |
platform/frontend/components/icons/MoonIcon.tsx |
3 | 0 | 3 |
platform/frontend/components/inbox/AIAssistancePanel.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/AssistantPane.tsx |
214 | 125 | 89 |
platform/frontend/components/inbox/ComposeButton.tsx |
29 | 16 | 13 |
platform/frontend/components/inbox/ComposeCard.tsx |
55 | 8 | 47 |
platform/frontend/components/inbox/ComposeModal.tsx |
62 | 20 | 42 |
platform/frontend/components/inbox/ConciergeGreeting.tsx |
88 | 0 | 88 |
platform/frontend/components/inbox/CustomSnoozeModal.tsx |
9 | 8 | 1 |
platform/frontend/components/inbox/EmailContextMenu.tsx |
49 | 33 | 16 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
102 | 165 | -63 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
0 | 2 | -2 |
platform/frontend/components/inbox/HelpToggleButton.tsx |
46 | 0 | 46 |
platform/frontend/components/inbox/InboxPlanB.tsx |
191 | 160 | 31 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
42 | 30 | 12 |
platform/frontend/components/inbox/InboxTabs.tsx |
32 | 34 | -2 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
99 | 99 | 0 |
platform/frontend/components/inbox/MarkdownEditor.tsx |
3 | 1 | 2 |
platform/frontend/components/inbox/RecipientInput.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ReplyComposer.tsx |
28 | 10 | 18 |
platform/frontend/components/inbox/SearchInput.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
101 | 72 | 29 |
platform/frontend/components/inbox/SmartBadge.tsx |
91 | 0 | 91 |
platform/frontend/components/inbox/SnoozeMenu.tsx |
72 | 44 | 28 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
50 | 14 | 36 |
platform/frontend/components/inbox/TemplatesPanel.tsx |
9 | 9 | 0 |
platform/frontend/components/inbox/ThreadRow.tsx |
138 | 97 | 41 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
4 | 4 | 0 |
platform/frontend/components/ui/tooltip.tsx |
3 | 0 | 3 |
platform/frontend/hooks/useSnoozeOptions.ts |
2 | 3 | -1 |
platform/frontend/lib/label-utils.ts |
2 | 2 | 0 |
platform/frontend/lib/sender-logo.ts |
18 | 0 | 18 |
platform/frontend/lib/token-helper.ts |
1 | 1 | 0 |
platform/frontend/next.config.js |
1 | 0 | 1 |
platform/frontend/package-lock.json |
13 | 102 | -89 |
platform/frontend/package.json |
1 | 0 | 1 |
platform/frontend/public/favicon-dev.svg |
4 | 0 | 4 |
platform/frontend/public/favicon-local.svg |
4 | 0 | 4 |
platform/frontend/styles/tokens.css |
168 | 49 | 119 |
platform/frontend/tailwind.config.ts |
1 | 1 | 0 |
platform/frontend/tsconfig.json |
20 | 4 | 16 |
Verify this commit:
git show --stat 2fc607ade920535c3ff4ac7453f87d4e2630c3b3Full Hash: 45d2725210060787bd1f436a12a56847ed8d5c5f
Short Hash: 45d2725
Timestamp: 2025-11-10 10:17:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix TypeScript errors in ClientPage
Summary: 1 files changed, 4 insertions(+), 2 deletions(-), net: 2 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
4 | 2 | 2 |
Verify this commit:
git show --stat 45d2725210060787bd1f436a12a56847ed8d5c5fFull Hash: 32983e396541d5d162d7f1b010090a9b2e016c39
Short Hash: 32983e3
Timestamp: 2025-11-10 10:14:49 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix autoFullscreenRef undefined error in AgentChatPanel
Summary: 2 files changed, 44 insertions(+), 52 deletions(-), net: -8 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
31 | 37 | -6 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
13 | 15 | -2 |
Verify this commit:
git show --stat 32983e396541d5d162d7f1b010090a9b2e016c39Full Hash: 8d41f39641eaabbc21df93f4971d5c618f087672
Short Hash: 8d41f39
Timestamp: 2025-11-10 10:08:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Use npm install instead of npm ci for Vercel builds to ensure devDependencies are installed
Summary: 1 files changed, 1 insertions(+), 1 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
package.json |
1 | 1 | 0 |
Verify this commit:
git show --stat 8d41f39641eaabbc21df93f4971d5c618f087672Full Hash: 71e1caf25aef03d84da0752789aced68b0ef98a2
Short Hash: 71e1caf
Timestamp: 2025-11-10 10:08:13 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix Vercel build: ensure devDependencies are installed
Summary: 1 files changed, 1 insertions(+), 1 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
package.json |
1 | 1 | 0 |
Verify this commit:
git show --stat 71e1caf25aef03d84da0752789aced68b0ef98a2Full Hash: 1c91ae5fd9bca141185d32410101c3c6db5e253f
Short Hash: 1c91ae5
Timestamp: 2025-11-10 10:05:01 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix TypeScript errors and add npm deployment scripts
Summary: 18 files changed, 348 insertions(+), 355 deletions(-), net: -7 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
73 | 8 | 65 |
docs/howto/full-inbox-import.md |
1 | 1 | 0 |
package.json |
4 | 1 | 3 |
platform/backend/api/inbox.py |
15 | 5 | 10 |
platform/backend/app/agent_engine/orchestrator.py |
11 | 1 | 10 |
platform/backend/app/services/inbox_sync_service.py |
4 | 6 | -2 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
103 | 109 | -6 |
platform/frontend/app/dashboard/settings/compose/page.tsx |
1 | 1 | 0 |
platform/frontend/app/dashboard/settings/page.tsx |
15 | 18 | -3 |
platform/frontend/components/icons/PlumeIcon.tsx |
3 | 1 | 2 |
platform/frontend/components/inbox/AssistantPane.tsx |
4 | 1 | 3 |
platform/frontend/components/inbox/ComposeCard.tsx |
45 | 105 | -60 |
platform/frontend/components/inbox/ComposeModal.tsx |
36 | 94 | -58 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/EmailBodyRenderer.tsx |
12 | 0 | 12 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
12 | 0 | 12 |
platform/frontend/lib/command-palette-events.ts |
1 | 1 | 0 |
platform/frontend/package.json |
3 | 1 | 2 |
Verify this commit:
git show --stat 1c91ae5fd9bca141185d32410101c3c6db5e253fFull Hash: c9d3ac524747474bc43ee9a5896debe127d701d3
Short Hash: c9d3ac5
Timestamp: 2025-11-10 09:19:14 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: move tailwindcss to dependencies for Vercel build
Summary: 1 files changed, 1 insertions(+), 1 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/package.json |
1 | 1 | 0 |
Verify this commit:
git show --stat c9d3ac524747474bc43ee9a5896debe127d701d3Full Hash: 9ce47f277ab5af0ac15951841097e463ad62a420
Short Hash: 9ce47f2
Timestamp: 2025-11-10 09:17:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Merge branch 'main' of github.com:joinnova-ci/autoflow-platform
Summary: No file changes detected
Verify this commit:
git show --stat 9ce47f277ab5af0ac15951841097e463ad62a420Full Hash: 54a398e0caee3207610e07d52b5906bc2547272e
Short Hash: 54a398e
Timestamp: 2025-11-10 09:16:24 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: deploy: Sync environment variables to dev
Summary: 31 files changed, 1968 insertions(+), 758 deletions(-), net: 1210 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
352 | 100 | 252 |
platform/backend/api/webhooks.py |
21 | 0 | 21 |
platform/backend/app/agent_engine/triage_agent_v3.py |
6 | 1 | 5 |
platform/backend/app/config/__init__.py |
8 | 6 | 2 |
platform/backend/app/models/thread_cache.py |
1 | 0 | 1 |
platform/backend/app/services/email_vectorization_service.py |
77 | 109 | -32 |
platform/backend/app/services/gmail_api.py |
13 | 1 | 12 |
platform/backend/app/services/inbox_sync_service.py |
124 | 132 | -8 |
platform/backend/app/services/pinecone_client.py |
272 | 16 | 256 |
platform/backend/app/services/semantic_search.py |
5 | 1 | 4 |
platform/backend/app/services/task_queue_service.py |
30 | 1 | 29 |
platform/backend/celery_app.py |
33 | 12 | 21 |
platform/backend/migrations/089_add_sync_job_id_to_thread_cache.sql |
13 | 0 | 13 |
platform/backend/scripts/clear_gmail_data.py |
12 | 16 | -4 |
platform/backend/scripts/vectorize_synced_emails.py |
10 | 12 | -2 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
6 | 0 | 6 |
platform/frontend/app/dashboard/settings/page.tsx |
92 | 31 | 61 |
platform/frontend/components/inbox/AssistantEmptyState.tsx |
1 | 4 | -3 |
platform/frontend/components/inbox/AssistantPane.tsx |
47 | 125 | -78 |
platform/frontend/components/inbox/BottomActionBar.tsx |
18 | 8 | 10 |
platform/frontend/components/inbox/CTAPills.tsx |
4 | 5 | -1 |
platform/frontend/components/inbox/ComposeCard.tsx |
122 | 107 | 15 |
platform/frontend/components/inbox/ComposeModal.tsx |
228 | 35 | 193 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/FullScreenComposer.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/MarkdownEditor.tsx |
25 | 20 | 5 |
platform/frontend/components/inbox/ReplyComposer.tsx |
18 | 8 | 10 |
platform/frontend/components/inbox/TemplatesPanel.tsx |
2 | 1 | 1 |
platform/frontend/components/inbox/ThreadRow.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/__tests__/AssistantPane.emptyState.test.tsx |
421 | 0 | 421 |
Verify this commit:
git show --stat 54a398e0caee3207610e07d52b5906bc2547272eFull Hash: 169f8e8d2fe0fa4ff0744fed9b48e24ac95d1c91
Short Hash: 169f8e8
Timestamp: 2025-11-10 00:25:47 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 120 files changed, 22436 insertions(+), 1633 deletions(-), net: 20803 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.local.example |
16 | 2 | 14 |
EMAIL_CONTENT_LOGGING_SECURITY.md |
1 | 0 | 1 |
Makefile |
23 | 3 | 20 |
docker-compose.local.yml |
1 | 1 | 0 |
docs/architecture/voyage-vector-pipeline.md |
2 | 2 | 0 |
docs/investigations/queue-and-chain-of-thought-issues.md |
174 | 0 | 174 |
docs/roadmap/email/v1/local/FULL_INBOX_SYNC_ONEPAGER.md |
152 | 0 | 152 |
docs/roadmap/email/v1/local/GMAIL_API_OPTIMIZATION_GUIDE.md |
221 | 0 | 221 |
docs/roadmap/email/v1/local/INBOX_SYNC_ARCHITECTURE_COMPLETE.md |
1188 | 0 | 1188 |
docs/roadmap/email/v1/local/INBOX_SYNC_CONFIGURATION_LEVERS.md |
378 | 0 | 378 |
docs/roadmap/email/v2/action-boxes-first-principles.md |
1 | 0 | 1 |
docs/roadmap/email/v2/markdown-first-principles.md |
1 | 0 | 1 |
docs/roadmap/platform/setup-guide.md |
7 | 0 | 7 |
docs/roadmap/platform/voyage-pinecone-integration-plan.md |
196 | 0 | 196 |
docs/setup/voyage-embeddings-setup.md |
104 | 0 | 104 |
docs/setup/voyage-pinecone-configuration.md |
119 | 0 | 119 |
platform/backend/api/actions.py |
127 | 2 | 125 |
platform/backend/api/ai_prompts.py |
162 | 0 | 162 |
platform/backend/api/draft_assist.py |
547 | 18 | 529 |
platform/backend/api/inbox.py |
632 | 123 | 509 |
platform/backend/api/user_preferences.py |
3 | 1 | 2 |
platform/backend/app/agent_engine/specialized_agents.py |
189 | 9 | 180 |
platform/backend/app/agent_engine/writing_style_analyzer.py |
1175 | 62 | 1113 |
platform/backend/app/config/__init__.py |
38 | 4 | 34 |
platform/backend/app/crud.py |
43 | 6 | 37 |
platform/backend/app/models/auto_approval_rule.py |
51 | 0 | 51 |
platform/backend/app/models/draft_assist.py |
27 | 1 | 26 |
platform/backend/app/models/email_embeddings.py |
22 | 4 | 18 |
platform/backend/app/models/sync_job.py |
10 | 4 | 6 |
platform/backend/app/models/sync_job_constants.py |
24 | 0 | 24 |
platform/backend/app/models/task_queue.py |
37 | 0 | 37 |
platform/backend/app/permissions/checker.py |
37 | 17 | 20 |
platform/backend/app/prompts/inbox_assistant.py |
18 | 7 | 11 |
platform/backend/app/security/encryption.py |
20 | 2 | 18 |
platform/backend/app/services/auto_approval_service.py |
422 | 0 | 422 |
platform/backend/app/services/email_embedding_service.py |
218 | 32 | 186 |
platform/backend/app/services/email_vectorization_service.py |
1880 | 0 | 1880 |
platform/backend/app/services/embedding_backends.py |
131 | 6 | 125 |
platform/backend/app/services/embedding_service.py |
2 | 2 | 0 |
platform/backend/app/services/gmail_api.py |
202 | 36 | 166 |
platform/backend/app/services/gmail_rate_limiter_shared.py |
1 | 0 | 1 |
platform/backend/app/services/gmail_service.py |
202 | 8 | 194 |
platform/backend/app/services/gmail_token_store.py |
52 | 2 | 50 |
platform/backend/app/services/inbox_sync_service.py |
992 | 66 | 926 |
platform/backend/app/services/pinecone_client.py |
270 | 57 | 213 |
platform/backend/app/services/task_queue_service.py |
358 | 0 | 358 |
platform/backend/app/services/web_access_service.py |
211 | 0 | 211 |
platform/backend/app/tools/auto_approval_tool.py |
184 | 0 | 184 |
platform/backend/app/tools/memory_tool.py |
129 | 0 | 129 |
platform/backend/app/tools/web_lookup.py |
132 | 0 | 132 |
platform/backend/celery_app.py |
237 | 9 | 228 |
platform/backend/check_column.py |
25 | 0 | 25 |
platform/backend/enable_pgvector.py |
55 | 0 | 55 |
platform/backend/init_db.py |
52 | 2 | 50 |
platform/backend/migrations/077_create_task_queue.sql |
33 | 0 | 33 |
platform/backend/migrations/078_create_auto_approval_rules.sql |
33 | 0 | 33 |
platform/backend/migrations/079_update_sync_job_status_constraint.sql |
14 | 0 | 14 |
platform/backend/migrations/080_add_email_counts_to_sync_jobs.sql |
11 | 0 | 11 |
platform/backend/migrations/081_create_writing_profile_chunks.sql |
27 | 0 | 27 |
platform/backend/migrations/082_add_chunk_tracking_to_writing_profile_jobs.sql |
42 | 0 | 42 |
platform/backend/migrations/083_add_vectorized_emails_to_sync_jobs.sql |
9 | 0 | 9 |
platform/backend/migrations/084_add_embedded_emails_to_sync_jobs.sql |
9 | 0 | 9 |
platform/backend/migrations/085_add_include_vectorization_to_sync_jobs.sql |
12 | 0 | 12 |
platform/backend/migrations/086_enable_pgvector.sql |
15 | 0 | 15 |
platform/backend/migrations/087_fix_email_embeddings_id_default.sql |
12 | 0 | 12 |
platform/backend/migrations/087_update_email_embedding_dimension_to_512.sql |
39 | 0 | 39 |
platform/backend/migrations/088_add_comprehensive_email_embedding_fields.sql |
165 | 0 | 165 |
platform/backend/plume_profile_export.json |
2120 | 0 | 2120 |
platform/backend/plume_profile_export_no_ids.json |
862 | 0 | 862 |
platform/backend/plume_profile_latest.json |
122 | 0 | 122 |
platform/backend/poetry.lock |
1547 | 9 | 1538 |
platform/backend/pyproject.toml |
3 | 3 | 0 |
platform/backend/scripts/check_email_logging.py |
1 | 0 | 1 |
platform/backend/scripts/check_fields_stored.py |
49 | 0 | 49 |
platform/backend/scripts/check_inbox_db.py |
124 | 0 | 124 |
platform/backend/scripts/check_storage_status.py |
118 | 0 | 118 |
platform/backend/scripts/check_synced_emails.py |
148 | 0 | 148 |
platform/backend/scripts/clear_gmail_data.py |
241 | 0 | 241 |
platform/backend/scripts/clear_pinecone_index.py |
152 | 0 | 152 |
platform/backend/scripts/count_emails.py |
66 | 0 | 66 |
platform/backend/scripts/fix_gmail_sync.py |
166 | 0 | 166 |
platform/backend/scripts/get_tone_summary.py |
144 | 0 | 144 |
platform/backend/scripts/vectorize_synced_emails.py |
236 | 0 | 236 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
128 | 35 | 93 |
platform/frontend/app/dashboard/settings/feature-flags/page.tsx |
14 | 0 | 14 |
platform/frontend/app/dashboard/settings/page.tsx |
703 | 165 | 538 |
platform/frontend/app/dashboard/settings/privacy/page.tsx |
40 | 1 | 39 |
platform/frontend/app/dashboard/settings/team-ai-assistant/page.tsx |
13 | 7 | 6 |
platform/frontend/app/globals.css |
6 | 4 | 2 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/icons/PlumeIcon.tsx |
108 | 0 | 108 |
platform/frontend/components/inbox/AssistantInput.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/AssistantPane.tsx |
1362 | 468 | 894 |
platform/frontend/components/inbox/ChatHistoryModal.tsx |
4 | 4 | 0 |
platform/frontend/components/inbox/ComposeCard.tsx |
471 | 146 | 325 |
platform/frontend/components/inbox/ComposeModal.tsx |
59 | 82 | -23 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
44 | 20 | 24 |
platform/frontend/components/inbox/CreateEditPromptModal.tsx |
65 | 134 | -69 |
platform/frontend/components/inbox/InboxPlanB.tsx |
3 | 1 | 2 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
18 | 14 | 4 |
platform/frontend/components/inbox/LinkDialog.tsx |
193 | 0 | 193 |
platform/frontend/components/inbox/MarkdownEditor.tsx |
55 | 2 | 53 |
platform/frontend/components/inbox/ProposalCard.tsx |
79 | 28 | 51 |
platform/frontend/components/inbox/QueueStatusIndicator.tsx |
160 | 0 | 160 |
platform/frontend/components/inbox/SentToast.tsx |
13 | 10 | 3 |
platform/frontend/components/inbox/TemplatesPanel.tsx |
272 | 0 | 272 |
platform/frontend/components/inbox/composer-fixes-plan.md |
325 | 0 | 325 |
platform/frontend/components/inbox/mobile/MobileEmailRow.tsx |
1 | 1 | 0 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/hooks/useDraftAutosave.ts |
10 | 2 | 8 |
platform/frontend/hooks/useFeatureFlags.tsx |
4 | 0 | 4 |
platform/frontend/lib/feature-flags.ts |
4 | 0 | 4 |
platform/frontend/lib/markdown.ts |
7 | 2 | 5 |
platform/frontend/lib/settings-defaults.ts |
1 | 0 | 1 |
platform/frontend/lib/token-helper.ts |
1 | 0 | 1 |
platform/frontend/package-lock.json |
139 | 4 | 135 |
platform/frontend/package.json |
2 | 0 | 2 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
scripts/check_pinecone_indexes.py |
104 | 0 | 104 |
Verify this commit:
git show --stat 169f8e8d2fe0fa4ff0744fed9b48e24ac95d1c91Full Hash: 7079901e1961600fcdfe0173ef7f45e241d37f90
Short Hash: 7079901
Timestamp: 2025-11-09 15:34:33 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: nice agent panel
Summary: 206 files changed, 23951 insertions(+), 4481 deletions(-), net: 19470 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.env.dev |
1 | 1 | 0 |
.env.dev.example |
20 | 0 | 20 |
.env.local.example |
20 | 0 | 20 |
.github/workflows/deploy.yml |
54 | 0 | 54 |
EMAIL_CONTENT_LOGGING_SECURITY.md |
1 | 0 | 1 |
Makefile |
45 | 1 | 44 |
docs/architecture/voyage-vector-pipeline.md |
51 | 0 | 51 |
docs/howto/full-inbox-import.md |
126 | 0 | 126 |
docs/roadmap/email/v2/action-boxes-first-principles.md |
1 | 0 | 1 |
docs/roadmap/email/v2/markdown-first-principles.md |
1 | 0 | 1 |
electron/README.md |
60 | 0 | 60 |
electron/electron-builder.yml |
20 | 0 | 20 |
electron/package-lock.json |
5277 | 0 | 5277 |
electron/package.json |
33 | 0 | 33 |
electron/resources/README.md |
8 | 0 | 8 |
electron/src/main/main.ts |
264 | 0 | 264 |
electron/src/preload/index.ts |
36 | 0 | 36 |
electron/tsconfig.json |
19 | 0 | 19 |
platform/backend/api/autocomplete.py |
3 | 3 | 0 |
platform/backend/api/chat.py |
5 | 2 | 3 |
platform/backend/api/contacts.py |
433 | 115 | 318 |
platform/backend/api/costs.py |
301 | 36 | 265 |
platform/backend/api/developer.py |
3 | 2 | 1 |
platform/backend/api/email_assistant.py |
5 | 2 | 3 |
platform/backend/api/embeddings.py |
281 | 0 | 281 |
platform/backend/api/gmail.py |
18 | 4 | 14 |
platform/backend/api/inbox.py |
460 | 209 | 251 |
platform/backend/api/profile.py |
24 | 3 | 21 |
platform/backend/api/search.py |
552 | 188 | 364 |
platform/backend/api/settings.py |
19 | 12 | 7 |
platform/backend/api/user_preferences.py |
39 | 26 | 13 |
platform/backend/app/agent_engine/agents_sdk_wrapper.py |
68 | 11 | 57 |
platform/backend/app/agent_engine/cache_layer.py |
2 | 2 | 0 |
platform/backend/app/agent_engine/cost_tracker.py |
75 | 18 | 57 |
platform/backend/app/agent_engine/model_router.py |
42 | 7 | 35 |
platform/backend/app/agent_engine/orchestrator.py |
45 | 18 | 27 |
platform/backend/app/agent_engine/plume.py |
13 | 42 | -29 |
platform/backend/app/agent_engine/slash_commands.py |
0 | 7 | -7 |
platform/backend/app/agent_engine/specialized_agents.py |
229 | 87 | 142 |
platform/backend/app/agent_engine/triage_agent.py |
2 | 1 | 1 |
platform/backend/app/agent_engine/triage_agent_v3.py |
54 | 23 | 31 |
platform/backend/app/agent_engine/writing_style_analyzer.py |
8 | 19 | -11 |
platform/backend/app/auth/jwks.py |
1 | 1 | 0 |
platform/backend/app/automation/engine.py |
7 | 28 | -21 |
platform/backend/app/automation/parser.py |
13 | 94 | -81 |
platform/backend/app/{config.py => config/__init__.py} |
18 | 4 | 14 |
platform/backend/app/config/model_settings.py |
53 | 0 | 53 |
platform/backend/app/conversation_storage.py |
9 | 12 | -3 |
platform/backend/app/models/agent.py |
3 | 3 | 0 |
platform/backend/app/models/automation.py |
1 | 1 | 0 |
platform/backend/app/models/email_embeddings.py |
3 | 3 | 0 |
platform/backend/app/observability/api_cost_tracker.py |
5 | 3 | 2 |
platform/backend/app/observability/llm_usage_tracker.py |
66 | 4 | 62 |
platform/backend/app/observability/logging_v2/events.py |
17 | 0 | 17 |
platform/backend/app/observability/metrics.py |
47 | 0 | 47 |
platform/backend/app/permissions/checker.py |
2 | 0 | 2 |
platform/backend/app/prompts/ai_prompts.py |
205 | 0 | 205 |
platform/backend/app/prompts/inbox_assistant.py |
7 | 6 | 1 |
platform/backend/app/schemas/agent.py |
2 | 2 | 0 |
platform/backend/app/services/ai_filter_parser.py |
2 | 2 | 0 |
platform/backend/app/services/ai_service.py |
258 | 0 | 258 |
platform/backend/app/services/email_embedding_service.py |
34 | 19 | 15 |
platform/backend/app/services/email_embeddings.py |
30 | 63 | -33 |
platform/backend/app/services/embedding_backends.py |
225 | 0 | 225 |
platform/backend/app/services/embedding_service.py |
105 | 40 | 65 |
platform/backend/app/services/gmail_api.py |
176 | 0 | 176 |
platform/backend/app/services/gmail_message_parser.py |
127 | 0 | 127 |
platform/backend/app/services/gmail_rate_limiter_shared.py |
88 | 0 | 88 |
platform/backend/app/services/gmail_request_concurrency.py |
85 | 0 | 85 |
platform/backend/app/services/gmail_service.py |
266 | 2 | 264 |
platform/backend/app/services/inbox_sync_service.py |
2 | 45 | -43 |
platform/backend/app/services/pinecone_client.py |
176 | 0 | 176 |
platform/backend/app/services/query_understanding.py |
272 | 0 | 272 |
platform/backend/app/services/semantic_search.py |
341 | 14 | 327 |
platform/backend/app/services/snooze_service.py |
3 | 9 | -6 |
platform/backend/app/tasks/inbox_hydration.py |
107 | 81 | 26 |
platform/backend/app/tools/action_box_tool.py |
66 | 10 | 56 |
platform/backend/app/tools/structured_response_tool.py |
27 | 16 | 11 |
platform/backend/app/utils/pricing.py |
0 | 3 | -3 |
platform/backend/engine/llm.py |
6 | 3 | 3 |
platform/backend/main.py |
4 | 3 | 1 |
platform/backend/migrations/075_update_email_embedding_dimension.sql |
23 | 0 | 23 |
platform/backend/migrations/076_add_sent_email_unique_constraint.sql |
30 | 0 | 30 |
platform/backend/pyproject.toml |
5 | 0 | 5 |
platform/backend/scripts/check_email_logging.py |
1 | 0 | 1 |
platform/backend/tests/integration/test_settings_apis.py |
50 | 1 | 49 |
platform/backend/tests/regression/test_inbox_core_actions.py |
95 | 0 | 95 |
platform/backend/tests/regression/test_search_regression.py |
186 | 0 | 186 |
platform/backend/tests/regression/test_sent_with_badge.py |
131 | 0 | 131 |
platform/backend/tests/unit/agent_engine/test_cost_tracking.py |
56 | 0 | 56 |
platform/backend/tests/unit/agent_engine/test_orchestrator.py |
28 | 0 | 28 |
platform/backend/tests/unit/api/test_costs_fallback.py |
70 | 0 | 70 |
platform/backend/tests/unit/email_v1/test_compose_send.py |
175 | 1 | 174 |
platform/backend/tests/unit/observability/test_cost_tracking_instrumentation.py |
98 | 0 | 98 |
platform/frontend/app/api/badge-waitlist/route.ts |
97 | 0 | 97 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1125 | 669 | 456 |
platform/frontend/app/dashboard/inbox/__tests__/snooze-utils.test.ts |
33 | 0 | 33 |
platform/frontend/app/dashboard/inbox/email/[emailId]/page.tsx |
11 | 8 | 3 |
platform/frontend/app/dashboard/inbox/error.tsx |
22 | 11 | 11 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
22 | 1 | 21 |
platform/frontend/app/dashboard/inbox/search/page.tsx |
12 | 6 | 6 |
platform/frontend/app/dashboard/inbox/snooze-utils.ts |
26 | 0 | 26 |
platform/frontend/app/dashboard/settings/compose/page.tsx |
117 | 10 | 107 |
platform/frontend/app/dashboard/settings/dev-tools/page.tsx |
90 | 0 | 90 |
platform/frontend/app/dashboard/settings/feature-flags/page.tsx |
25 | 35 | -10 |
platform/frontend/app/dashboard/settings/layout.tsx |
5 | 1 | 4 |
platform/frontend/app/dashboard/settings/miscellaneous/page.tsx |
25 | 21 | 4 |
platform/frontend/app/dashboard/settings/page.tsx |
873 | 60 | 813 |
platform/frontend/app/globals.css |
43 | 0 | 43 |
platform/frontend/app/layout.tsx |
61 | 26 | 35 |
platform/frontend/app/sent-with/BadgeLandingAnalytics.tsx |
25 | 0 | 25 |
platform/frontend/app/sent-with/ReferralShareCard.tsx |
68 | 0 | 68 |
platform/frontend/app/sent-with/WaitlistForm.tsx |
153 | 0 | 153 |
platform/frontend/app/sent-with/feature-content.ts |
70 | 0 | 70 |
platform/frontend/app/sent-with/page.tsx |
296 | 0 | 296 |
platform/frontend/components/ThemeToggle.tsx |
6 | 11 | -5 |
platform/frontend/components/command-palette/CommandPalette.tsx |
361 | 315 | 46 |
platform/frontend/components/command-palette/__tests__/CommandPalette.test.tsx |
134 | 0 | 134 |
platform/frontend/components/costs/CostPanel.tsx |
71 | 62 | 9 |
platform/frontend/components/icons/MoonIcon.tsx |
1 | 0 | 1 |
platform/frontend/components/inbox/AIAssistancePanel.tsx |
248 | 38 | 210 |
platform/frontend/components/inbox/ActionBar.tsx |
23 | 0 | 23 |
platform/frontend/components/inbox/AssistantPane.tsx |
419 | 379 | 40 |
platform/frontend/components/inbox/AvatarMenu.tsx |
47 | 51 | -4 |
platform/frontend/components/inbox/CTAPills.tsx |
24 | 27 | -3 |
platform/frontend/components/inbox/ChatHistoryModal.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ComposeButton.tsx |
7 | 1 | 6 |
platform/frontend/components/inbox/ComposeCard.tsx |
412 | 198 | 214 |
platform/frontend/components/inbox/ComposeModal.tsx |
511 | 319 | 192 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
123 | 80 | 43 |
platform/frontend/components/inbox/EmailBodyRenderer.tsx |
131 | 19 | 112 |
platform/frontend/components/inbox/EmailCard.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailDetail.tsx |
169 | 183 | -14 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
12 | 2 | 10 |
platform/frontend/components/inbox/FullScreenComposer.tsx |
4 | 3 | 1 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
15 | 15 | 0 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
7 | 10 | -3 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
7 | 10 | -3 |
platform/frontend/components/inbox/InboxPlanB.tsx |
57 | 21 | 36 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
49 | 14 | 35 |
platform/frontend/components/inbox/InboxTabs.tsx |
15 | 16 | -1 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
10 | 4 | 6 |
platform/frontend/components/inbox/InputLarge.tsx |
5 | 2 | 3 |
platform/frontend/components/inbox/MarkdownEditor.tsx |
214 | 0 | 214 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
14 | 0 | 14 |
platform/frontend/components/inbox/RecipientInput.tsx |
443 | 172 | 271 |
platform/frontend/components/inbox/ReplyComposer.tsx |
140 | 154 | -14 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
7 | 10 | -3 |
platform/frontend/components/inbox/SearchInput.tsx |
57 | 20 | 37 |
platform/frontend/components/inbox/SentToast.tsx |
23 | 18 | 5 |
platform/frontend/components/inbox/SignaturePreview.tsx |
92 | 0 | 92 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ThreadRow.tsx |
84 | 47 | 37 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
31 | 12 | 19 |
platform/frontend/components/inbox/__tests__/ComposeModal.test.tsx |
15 | 1 | 14 |
platform/frontend/components/inbox/__tests__/EmailDetail.test.tsx |
227 | 0 | 227 |
platform/frontend/components/inbox/__tests__/InboxPlanB.test.tsx |
93 | 0 | 93 |
platform/frontend/components/inbox/__tests__/PlanBEmailDrawer.test.tsx |
64 | 0 | 64 |
platform/frontend/components/inbox/__tests__/composer-formatting-shortcuts.test.ts |
67 | 0 | 67 |
platform/frontend/components/inbox/__tests__/reply-template-utils.test.ts |
58 | 0 | 58 |
platform/frontend/components/inbox/assistant-suggestions.ts |
79 | 0 | 79 |
platform/frontend/components/inbox/compose-agent-context.ts |
14 | 0 | 14 |
platform/frontend/components/inbox/composer-formatting-shortcuts.ts |
89 | 0 | 89 |
platform/frontend/components/inbox/mobile/MobileBertChatView.tsx |
147 | 0 | 147 |
platform/frontend/components/inbox/mobile/MobileComposeView.tsx |
124 | 0 | 124 |
platform/frontend/components/inbox/mobile/MobileEmailRow.tsx |
153 | 0 | 153 |
platform/frontend/components/inbox/mobile/MobileFilterChips.tsx |
86 | 0 | 86 |
platform/frontend/components/inbox/mobile/MobileInboxHeader.tsx |
41 | 0 | 41 |
platform/frontend/components/inbox/mobile/MobileInboxShell.tsx |
240 | 0 | 240 |
platform/frontend/components/inbox/mobile/MobileMoreView.tsx |
161 | 0 | 161 |
platform/frontend/components/inbox/mobile/MobileSearchView.tsx |
89 | 0 | 89 |
platform/frontend/components/inbox/mobile/MobileTabBar.tsx |
117 | 0 | 117 |
platform/frontend/components/inbox/mobile/MobileThreadView.tsx |
112 | 0 | 112 |
platform/frontend/components/inbox/mobile/types.ts |
49 | 0 | 49 |
platform/frontend/components/inbox/mobile/utils.ts |
40 | 0 | 40 |
platform/frontend/components/inbox/reply-template-utils.ts |
87 | 0 | 87 |
platform/frontend/components/theme/__tests__/ThemeProvider.test.tsx |
98 | 0 | 98 |
platform/frontend/components/ui/tooltip.tsx |
1 | 0 | 1 |
platform/frontend/config/settings-nav.ts |
6 | 2 | 4 |
platform/frontend/hooks/useAvatar.ts |
32 | 18 | 14 |
platform/frontend/hooks/useComposerSignature.ts |
104 | 0 | 104 |
platform/frontend/hooks/useCostTracking.ts |
114 | 49 | 65 |
platform/frontend/hooks/useDraftAutosave.ts |
11 | 0 | 11 |
platform/frontend/hooks/useEmailSignatures.ts |
49 | 0 | 49 |
platform/frontend/hooks/useFeatureFlags.tsx |
114 | 1 | 113 |
platform/frontend/hooks/useGmailShortcuts.ts |
4 | 4 | 0 |
platform/frontend/hooks/useInboxHydration.ts |
65 | 8 | 57 |
platform/frontend/lib/__tests__/feature-flags.plan-b.test.ts |
26 | 0 | 26 |
platform/frontend/lib/__tests__/file-utils.test.ts |
24 | 0 | 24 |
platform/frontend/lib/api-client.ts |
30 | 1 | 29 |
platform/frontend/lib/command-palette-events.ts |
6 | 6 | 0 |
platform/frontend/lib/feature-flags.ts |
60 | 1 | 59 |
platform/frontend/lib/file-utils.ts |
29 | 0 | 29 |
platform/frontend/lib/markdown.ts |
24 | 0 | 24 |
platform/frontend/lib/settings-defaults.ts |
2 | 1 | 1 |
platform/frontend/lib/signature-utils.ts |
17 | 0 | 17 |
platform/frontend/lib/support-compose.ts |
17 | 0 | 17 |
platform/frontend/lib/token-helper.ts |
91 | 0 | 91 |
platform/frontend/package-lock.json |
798 | 3 | 795 |
platform/frontend/package.json |
6 | 0 | 6 |
platform/frontend/public/favicon-dev.svg |
1 | 0 | 1 |
platform/frontend/public/favicon-local.svg |
1 | 0 | 1 |
platform/frontend/styles/dark-mode.css |
4 | 4 | 0 |
platform/frontend/styles/tokens.css |
6 | 6 | 0 |
scripts/backfill_email_embeddings.py |
246 | 0 | 246 |
scripts/vectorize_sample.py |
113 | 0 | 113 |
Verify this commit:
git show --stat 7079901e1961600fcdfe0173ef7f45e241d37f90Full Hash: 7c31212ef6bb30c80819affd23c310be7209c068
Short Hash: 7c31212
Timestamp: 2025-11-08 23:52:40 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: add webpack alias configuration for @/ paths
Summary: 1 files changed, 6 insertions(+), 0 deletions(-), net: 6 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/next.config.js |
6 | 0 | 6 |
Verify this commit:
git show --stat 7c31212ef6bb30c80819affd23c310be7209c068Full Hash: 90b9457690fa31b74bbe93723c5ce6499c9ad859
Short Hash: 90b9457
Timestamp: 2025-11-08 23:50:36 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: install Next.js at root for Vercel detection
Summary: 1 files changed, 1 insertions(+), 1 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
vercel.json |
1 | 1 | 0 |
Verify this commit:
git show --stat 90b9457690fa31b74bbe93723c5ce6499c9ad859Full Hash: 3effff7e8481397088a9c16b4d419d3ae18c57dc
Short Hash: 3effff7
Timestamp: 2025-11-08 23:47:02 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: docs: update workflow comments with required PR checks
Summary: 3 files changed, 27 insertions(+), 0 deletions(-), net: 27 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.github/workflows/ci.yml |
10 | 0 | 10 |
.github/workflows/codex-review.yml |
10 | 0 | 10 |
.github/workflows/deploy.yml |
7 | 0 | 7 |
Verify this commit:
git show --stat 3effff7e8481397088a9c16b4d419d3ae18c57dcFull Hash: 715bc7128de5e02f92dff14394b99dd742c6687c
Short Hash: 715bc71
Timestamp: 2025-11-08 23:45:57 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: remove legacy Vercel autoflow-platform check
Summary: 2 files changed, 0 insertions(+), 2 deletions(-), net: -2 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
PRODUCTION_DEPLOY_WORKFLOW.md |
0 | 1 | -1 |
scripts/setup-branch-protection.sh |
0 | 1 | -1 |
Verify this commit:
git show --stat 715bc7128de5e02f92dff14394b99dd742c6687cFull Hash: 1fd878b2199130893d646c77b3052946ac890674
Short Hash: 1fd878b
Timestamp: 2025-11-08 23:44:39 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: docs: add branch protection setup script and update required checks
Summary: 2 files changed, 113 insertions(+), 0 deletions(-), net: 113 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
PRODUCTION_DEPLOY_WORKFLOW.md |
20 | 0 | 20 |
scripts/setup-branch-protection.sh |
93 | 0 | 93 |
Verify this commit:
git show --stat 1fd878b2199130893d646c77b3052946ac890674Full Hash: 9d3ee681dbec56fab307dd71bb16df9ded7f5d5f
Short Hash: 9d3ee68
Timestamp: 2025-11-08 23:38:16 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: add Next.js to root package.json for Vercel detection
Summary: 2 files changed, 432 insertions(+), 0 deletions(-), net: 432 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
package-lock.json |
429 | 0 | 429 |
package.json |
3 | 0 | 3 |
Verify this commit:
git show --stat 9d3ee681dbec56fab307dd71bb16df9ded7f5d5fFull Hash: 24422b78744f8735514395d3cc36b5cabf51d02e
Short Hash: 24422b7
Timestamp: 2025-11-08 23:37:52 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: move tailwindcss-animate to dependencies for Vercel build
Summary: 2 files changed, 2 insertions(+), 3 deletions(-), net: -1 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/package-lock.json |
1 | 2 | -1 |
platform/frontend/package.json |
1 | 1 | 0 |
Verify this commit:
git show --stat 24422b78744f8735514395d3cc36b5cabf51d02eFull Hash: 33a24cde143de3839bca15b9ee7ed1a564e634c8
Short Hash: 33a24cd
Timestamp: 2025-11-08 23:36:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat: add Render deployment checks, Codex reviews, and fix ESLint errors
Summary: 15 files changed, 891 insertions(+), 129 deletions(-), net: 762 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
.github/workflows/codex-review.yml |
80 | 0 | 80 |
.github/workflows/deploy.yml |
49 | 1 | 48 |
package.json |
2 | 1 | 1 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
370 | 82 | 288 |
platform/frontend/app/dashboard/inbox/email/[emailId]/page.tsx |
21 | 0 | 21 |
platform/frontend/components/inbox/AssistantPane.tsx |
13 | 2 | 11 |
platform/frontend/components/inbox/AttachmentDropZone.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/ComposeCard.tsx |
6 | 6 | 0 |
platform/frontend/components/inbox/EmailDetail.tsx |
193 | 9 | 184 |
platform/frontend/components/inbox/InboxPlanB.tsx |
54 | 21 | 33 |
platform/frontend/components/inbox/InboxTabs.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
43 | 0 | 43 |
platform/frontend/components/inbox/RecipientInput.tsx |
43 | 0 | 43 |
vercel.json |
10 | 0 | 10 |
Verify this commit:
git show --stat 33a24cde143de3839bca15b9ee7ed1a564e634c8Full Hash: 5c1ff3a0eccc2dd35c85965825331e8298d5b7eb
Short Hash: 5c1ff3a
Timestamp: 2025-11-08 23:28:12 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: update inbox components (ClientPage, AssistantPane, InboxPlanB)
Summary: 3 files changed, 67 insertions(+), 77 deletions(-), net: -10 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
34 | 64 | -30 |
platform/frontend/components/inbox/AssistantPane.tsx |
14 | 12 | 2 |
platform/frontend/components/inbox/InboxPlanB.tsx |
19 | 1 | 18 |
Verify this commit:
git show --stat 5c1ff3a0eccc2dd35c85965825331e8298d5b7ebFull Hash: db8883418d21a35f47cbc11b0394f0df7143760e
Short Hash: db88834
Timestamp: 2025-11-08 23:27:32 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: fix: add root package.json with vercel-build script for monorepo deployment
Summary: 1 files changed, 9 insertions(+), 0 deletions(-), net: 9 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
package.json |
9 | 0 | 9 |
Verify this commit:
git show --stat db8883418d21a35f47cbc11b0394f0df7143760eFull Hash: 1f155c7476214e08388e522a8a18fee1e67cceda
Short Hash: 1f155c7
Timestamp: 2025-11-08 23:25:03 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat: update inbox UI components and assistant functionality
Summary: 18 files changed, 1215 insertions(+), 1081 deletions(-), net: 134 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/inbox.py |
34 | 394 | -360 |
platform/backend/app/prompts/agent_instructions.py |
4 | 0 | 4 |
platform/backend/app/prompts/inbox_assistant.py |
8 | 4 | 4 |
platform/backend/app/tools/structured_response_tool.py |
3 | 0 | 3 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
83 | 65 | 18 |
platform/frontend/app/dashboard/inbox/page.tsx |
2 | 0 | 2 |
platform/frontend/components/command-palette/CommandPalette.tsx |
13 | 49 | -36 |
platform/frontend/components/inbox/AssistantPane.tsx |
92 | 98 | -6 |
platform/frontend/components/inbox/EmailDetail.tsx |
179 | 27 | 152 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
22 | 151 | -129 |
platform/frontend/components/inbox/InboxPlanB.tsx |
62 | 92 | -30 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
40 | 5 | 35 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
35 | 5 | 30 |
platform/frontend/components/inbox/RecipientInput.tsx |
84 | 144 | -60 |
platform/frontend/components/inbox/ReplyComposer.tsx |
455 | 20 | 435 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
36 | 22 | 14 |
platform/frontend/components/inbox/ThreadRow.tsx |
62 | 4 | 58 |
platform/frontend/lib/command-palette-events.ts |
1 | 1 | 0 |
Verify this commit:
git show --stat 1f155c7476214e08388e522a8a18fee1e67ccedaFull Hash: f9ea9fc049a6dc64b83a4078855961b84a10f657
Short Hash: f9ea9fc
Timestamp: 2025-11-08 22:47:25 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 41 files changed, 4207 insertions(+), 1718 deletions(-), net: 2489 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
= |
0 | 0 | 0 |
SHIPPED_TODAY.md |
13 | 0 | 13 |
agents.md |
57 | 0 | 57 |
platform/backend/api/contacts.py |
145 | 20 | 125 |
platform/backend/api/inbox.py |
226 | 65 | 161 |
platform/backend/app/services/thread_cache_service.py |
107 | 3 | 104 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
605 | 483 | 122 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx.bak2 |
10 | 0 | 10 |
platform/frontend/app/dashboard/settings/page.tsx |
31 | 13 | 18 |
platform/frontend/components/ThemeToggle.tsx |
5 | 5 | 0 |
platform/frontend/components/icons/MoonIcon.tsx |
31 | 0 | 31 |
platform/frontend/components/icons/SunIcon.tsx |
8 | 32 | -24 |
platform/frontend/components/inbox/AssistantInput.tsx |
5 | 4 | 1 |
platform/frontend/components/inbox/AssistantPane.tsx |
246 | 121 | 125 |
platform/frontend/components/inbox/AvatarMenu.tsx |
6 | 4 | 2 |
platform/frontend/components/inbox/ChipBadge.tsx |
21 | 8 | 13 |
platform/frontend/components/inbox/ComposeButton.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ComposeCard.tsx |
380 | 87 | 293 |
platform/frontend/components/inbox/ComposeModal.tsx |
257 | 81 | 176 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
175 | 12 | 163 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
53 | 146 | -93 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
3 | 2 | 1 |
platform/frontend/components/inbox/HeaderControlGutterLeft.tsx |
23 | 3 | 20 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
2 | 2 | 0 |
platform/frontend/components/inbox/InboxDrawer.tsx |
45 | 2 | 43 |
platform/frontend/components/inbox/InboxDropdown.tsx |
53 | 1 | 52 |
platform/frontend/components/inbox/InboxPlanB.tsx |
469 | 266 | 203 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
9 | 6 | 3 |
platform/frontend/components/inbox/InboxTabs.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/PlanBEmailDrawer.tsx |
96 | 0 | 96 |
platform/frontend/components/inbox/RecipientInput.tsx |
480 | 234 | 246 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
3 | 2 | 1 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
65 | 40 | 25 |
platform/frontend/components/inbox/SentToast.tsx |
176 | 0 | 176 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
3 | 0 | 3 |
platform/frontend/components/inbox/ThreadRow.tsx |
111 | 22 | 89 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
5 | 1 | 4 |
platform/frontend/components/theme/ThemeProvider.tsx |
43 | 8 | 35 |
platform/frontend/lib/command-palette-events.ts |
1 | 1 | 0 |
platform/frontend/lib/label-utils.ts |
114 | 0 | 114 |
platform/frontend/styles/tokens.css |
123 | 42 | 81 |
Verify this commit:
git show --stat f9ea9fc049a6dc64b83a4078855961b84a10f657Full Hash: 1eecf07325c7ae5a7d7b8e42f74aa24c89253cfe
Short Hash: 1eecf07
Timestamp: 2025-11-08 19:22:58 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 38 files changed, 1860 insertions(+), 893 deletions(-), net: 967 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
1 | 1 | 0 |
platform/backend/api/contacts.py |
27 | 15 | 12 |
platform/backend/api/inbox.py |
199 | 0 | 199 |
platform/backend/app/services/gmail_token_store.py |
21 | 5 | 16 |
platform/backend/tests/unit/email_v1/test_oauth_credentials.py |
2 | 2 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
313 | 253 | 60 |
platform/frontend/app/dashboard/inbox/inbox.css |
19 | 0 | 19 |
platform/frontend/app/dashboard/settings/appearance/page.tsx |
20 | 22 | -2 |
platform/frontend/app/dashboard/settings/page.tsx |
210 | 45 | 165 |
platform/frontend/components/command-palette/CommandPalette.tsx |
39 | 2 | 37 |
platform/frontend/components/dashboard/DashboardErrorBoundary.tsx |
0 | 3 | -3 |
platform/frontend/components/inbox/AIAssistancePanel.tsx |
26 | 6 | 20 |
platform/frontend/components/inbox/AssistantInput.tsx |
2 | 3 | -1 |
platform/frontend/components/inbox/AssistantPane.tsx |
63 | 72 | -9 |
platform/frontend/components/inbox/BulkActionsToolbar.tsx |
12 | 7 | 5 |
platform/frontend/components/inbox/ChipBadge.tsx |
5 | 3 | 2 |
platform/frontend/components/inbox/ComposeButton.tsx |
3 | 8 | -5 |
platform/frontend/components/inbox/ComposeCard.tsx |
97 | 76 | 21 |
platform/frontend/components/inbox/ComposeModal.tsx |
23 | 23 | 0 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
8 | 7 | 1 |
platform/frontend/components/inbox/EmptyChatScaffold.tsx |
17 | 17 | 0 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
23 | 43 | -20 |
platform/frontend/components/inbox/InboxDrawer.tsx |
47 | 3 | 44 |
platform/frontend/components/inbox/InboxPlanB.tsx |
176 | 96 | 80 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
30 | 33 | -3 |
platform/frontend/components/inbox/MoveLabelPicker.tsx |
17 | 17 | 0 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
5 | 1 | 4 |
platform/frontend/components/inbox/SearchInput.tsx |
49 | 13 | 36 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
9 | 5 | 4 |
platform/frontend/components/inbox/ThreadRow.tsx |
15 | 20 | -5 |
platform/frontend/components/theme/ThemeProvider.tsx |
21 | 0 | 21 |
platform/frontend/hooks/useSettings.ts |
11 | 12 | -1 |
platform/frontend/lib/accent-colors.ts |
215 | 0 | 215 |
platform/frontend/lib/command-palette-events.ts |
1 | 0 | 1 |
platform/frontend/lib/feature-flags.ts |
1 | 1 | 0 |
platform/frontend/styles/dark-mode.css |
25 | 29 | -4 |
platform/frontend/styles/tokens.css |
108 | 50 | 58 |
testfile_codex |
0 | 0 | 0 |
Verify this commit:
git show --stat 1eecf07325c7ae5a7d7b8e42f74aa24c89253cfeFull Hash: 5b885dc986432f41e0020f091f744ab2570b6e37
Short Hash: 5b885dc
Timestamp: 2025-11-08 18:28:22 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: prepare for production deployment
Summary: 12 files changed, 88 insertions(+), 56 deletions(-), net: 32 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
1 | 0 | 1 |
platform/frontend/app/globals.css |
3 | 2 | 1 |
platform/frontend/components/inbox/ChatHistoryModal.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
13 | 10 | 3 |
platform/frontend/components/inbox/HeaderControlGutterLeft.tsx |
10 | 6 | 4 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
13 | 10 | 3 |
platform/frontend/components/inbox/InboxPlanB.tsx |
4 | 2 | 2 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
10 | 1 | 9 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
6 | 6 | 0 |
platform/frontend/components/inbox/ThreadRow.tsx |
14 | 15 | -1 |
platform/frontend/components/theme/ThemeProvider.tsx |
11 | 1 | 10 |
platform/frontend/components/ui/tooltip.tsx |
2 | 2 | 0 |
Verify this commit:
git show --stat 5b885dc986432f41e0020f091f744ab2570b6e37Full Hash: 49587765e917142f6bf852d98fbe3b8df6cf6463
Short Hash: 4958776
Timestamp: 2025-11-08 18:16:49 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: chore: prepare for production deployment
Summary: 65 files changed, 6262 insertions(+), 1885 deletions(-), net: 4377 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
Makefile |
1 | 0 | 1 |
agents.md |
334 | 0 | 334 |
docs/roadmap/email/v1/local/specs/inbox/22-avatar-interaction-spec.md |
849 | 0 | 849 |
platform/backend/api/inbox.py |
157 | 81 | 76 |
platform/backend/app/agent_engine/orchestrator.py |
128 | 1 | 127 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
690 | 254 | 436 |
platform/frontend/app/dashboard/inbox/SimpleInbox.tsx |
2 | 2 | 0 |
platform/frontend/app/dashboard/inbox/error.tsx |
39 | 31 | 8 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
316 | 7 | 309 |
platform/frontend/app/dashboard/inbox/inbox.css |
198 | 0 | 198 |
platform/frontend/app/dashboard/inbox/page.tsx |
6 | 1 | 5 |
platform/frontend/app/dashboard/settings/layout.tsx |
26 | 2 | 24 |
platform/frontend/app/dashboard/settings/page.tsx |
215 | 13 | 202 |
platform/frontend/app/globals.css |
110 | 25 | 85 |
platform/frontend/app/not-found.tsx |
53 | 0 | 53 |
platform/frontend/components/command-palette/CommandPalette.tsx |
9 | 6 | 3 |
platform/frontend/components/dashboard/DashboardErrorBoundary.tsx |
37 | 32 | 5 |
platform/frontend/components/inbox/AIAssistancePanel.tsx |
96 | 7 | 89 |
platform/frontend/components/inbox/AssistantHeaderCard.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/AssistantInput.tsx |
30 | 26 | 4 |
platform/frontend/components/inbox/AssistantPane.tsx |
117 | 59 | 58 |
platform/frontend/components/inbox/AvatarMenu.tsx |
228 | 149 | 79 |
platform/frontend/components/inbox/BottomActionBar.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ChainOfThoughtDisplay.tsx |
11 | 19 | -8 |
platform/frontend/components/inbox/ChipBadge.tsx |
15 | 11 | 4 |
platform/frontend/components/inbox/ComposeButton.tsx |
17 | 2 | 15 |
platform/frontend/components/inbox/ComposeCard.tsx |
235 | 105 | 130 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
27 | 21 | 6 |
platform/frontend/components/inbox/EmailAssistant.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailDetail.tsx |
397 | 64 | 333 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
145 | 56 | 89 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
172 | 59 | 113 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
3 | 4 | -1 |
platform/frontend/components/inbox/InboxPlanB.tsx |
378 | 135 | 243 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
22 | 16 | 6 |
platform/frontend/components/inbox/InboxTabs.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/InboxZeroState.tsx |
11 | 4 | 7 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
1 | 2 | -1 |
platform/frontend/components/inbox/MarkdownRendererV2.tsx |
7 | 7 | 0 |
platform/frontend/components/inbox/RecipientInput.tsx |
38 | 9 | 29 |
platform/frontend/components/inbox/ReplyComposer.tsx |
483 | 478 | 5 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
5 | 7 | -2 |
platform/frontend/components/inbox/SavedPromptButton.tsx |
57 | 58 | -1 |
platform/frontend/components/inbox/SavedPromptsList.tsx |
4 | 5 | -1 |
platform/frontend/components/inbox/SelectionModeContext.tsx |
19 | 0 | 19 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
1 | 6 | -5 |
platform/frontend/components/inbox/TabsToggle.tsx |
29 | 13 | 16 |
platform/frontend/components/inbox/ThreadRow.tsx |
157 | 17 | 140 |
platform/frontend/components/inbox/TodosEmptyState.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
1 | 1 | 0 |
platform/frontend/components/theme/ThemeProvider.tsx |
84 | 4 | 80 |
platform/frontend/components/ui/button.tsx |
4 | 2 | 2 |
platform/frontend/components/ui/emoji-picker.tsx |
1 | 1 | 0 |
platform/frontend/components/ui/tooltip.tsx |
31 | 0 | 31 |
platform/frontend/hooks/useFeatureFlags.tsx |
4 | 0 | 4 |
platform/frontend/hooks/useTheme.ts |
0 | 29 | -29 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
platform/frontend/middleware.ts |
14 | 0 | 14 |
platform/frontend/package-lock.json |
163 | 1 | 162 |
platform/frontend/package.json |
2 | 0 | 2 |
platform/frontend/styles/dark-mode.css |
22 | 17 | 5 |
platform/frontend/styles/tokens.css |
28 | 5 | 23 |
platform/frontend/styles/tokens/colors.css |
13 | 13 | 0 |
platform/frontend/styles/tokens/composer.css |
10 | 10 | 0 |
Verify this commit:
git show --stat 49587765e917142f6bf852d98fbe3b8df6cf6463Full Hash: 50f197ae73f4763a67e26bb6a462743281205921
Short Hash: 50f197a
Timestamp: 2025-11-08 16:23:00 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 18 files changed, 1211 insertions(+), 290 deletions(-), net: 921 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
573 | 147 | 426 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
27 | 0 | 27 |
platform/frontend/components/ThemeToggle.tsx |
4 | 3 | 1 |
platform/frontend/components/icons/SunIcon.tsx |
54 | 0 | 54 |
platform/frontend/components/inbox/AssistantInput.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/AssistantPane.tsx |
67 | 11 | 56 |
platform/frontend/components/inbox/AvatarMenu.tsx |
6 | 1 | 5 |
platform/frontend/components/inbox/ComposeButton.tsx |
30 | 0 | 30 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
22 | 9 | 13 |
platform/frontend/components/inbox/HeaderControlGutter.tsx |
3 | 2 | 1 |
platform/frontend/components/inbox/HeaderControlGutterLeft.tsx |
17 | 0 | 17 |
platform/frontend/components/inbox/HeaderControlGutterRight.tsx |
73 | 0 | 73 |
platform/frontend/components/inbox/InboxTabs.tsx |
244 | 41 | 203 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
3 | 2 | 1 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
9 | 6 | 3 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
8 | 1 | 7 |
platform/frontend/components/inbox/TodosEmptyState.tsx |
6 | 6 | 0 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
64 | 60 | 4 |
Verify this commit:
git show --stat 50f197ae73f4763a67e26bb6a462743281205921Full Hash: 94238154875e27f707ec08f068b6bf125111ae83
Short Hash: 9423815
Timestamp: 2025-11-08 15:57:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix syntax error, missing state, database migration, and FileCopy import
Summary: 42 files changed, 7314 insertions(+), 11506 deletions(-), net: -4192 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/backend/api/ai_prompts.py |
160 | 29 | 131 |
platform/backend/api/inbox.py |
129 | 0 | 129 |
platform/backend/migrations/074_add_description_and_order_to_saved_prompts.sql |
45 | 0 | 45 |
platform/frontend/app/dashboard/inbox/ClientPage.js |
0 | 10544 | -10544 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
573 | 292 | 281 |
platform/frontend/app/dashboard/inbox/thinking-steps.js |
0 | 55 | -55 |
platform/frontend/app/dashboard/inbox/types.js |
0 | 14 | -14 |
platform/frontend/components/command-palette/CommandPalette.tsx |
48 | 32 | 16 |
platform/frontend/components/inbox/AIAssistancePanel.tsx |
217 | 0 | 217 |
platform/frontend/components/inbox/AssistantInput.tsx |
81 | 54 | 27 |
platform/frontend/components/inbox/AssistantPane.tsx |
491 | 170 | 321 |
platform/frontend/components/inbox/AttachmentDropZone.tsx |
257 | 0 | 257 |
platform/frontend/components/inbox/CTAPills.tsx |
2 | 7 | -5 |
platform/frontend/components/inbox/ComposeCard.tsx |
625 | 0 | 625 |
platform/frontend/components/inbox/ComposeOverlay.tsx |
77 | 0 | 77 |
platform/frontend/components/inbox/ConfigureImportStep.tsx |
290 | 0 | 290 |
platform/frontend/components/inbox/CreateEditPromptModal.tsx |
294 | 0 | 294 |
platform/frontend/components/inbox/DoneCard.tsx |
94 | 0 | 94 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
98 | 236 | -138 |
platform/frontend/components/inbox/FullScreenEmailView.tsx |
748 | 0 | 748 |
platform/frontend/components/inbox/IMAPSetupStep.tsx |
245 | 0 | 245 |
platform/frontend/components/inbox/ImportCompleteStep.tsx |
78 | 0 | 78 |
platform/frontend/components/inbox/ImportInboxSheet.tsx |
286 | 0 | 286 |
platform/frontend/components/inbox/ImportProgressStep.tsx |
111 | 0 | 111 |
platform/frontend/components/inbox/InboxTabs.tsx |
85 | 22 | 63 |
platform/frontend/components/inbox/InboxZeroState.tsx |
35 | 17 | 18 |
platform/frontend/components/inbox/InlineReplyComposer.tsx |
1064 | 0 | 1064 |
platform/frontend/components/inbox/InputLarge.tsx |
4 | 1 | 3 |
platform/frontend/components/inbox/OAuthAuthStep.tsx |
142 | 0 | 142 |
platform/frontend/components/inbox/ProposalCard.tsx |
101 | 0 | 101 |
platform/frontend/components/inbox/ProviderSelectionStep.tsx |
117 | 0 | 117 |
platform/frontend/components/inbox/ResultLine.tsx |
38 | 0 | 38 |
platform/frontend/components/inbox/SavedPromptButton.tsx |
178 | 0 | 178 |
platform/frontend/components/inbox/SavedPromptsEmptyState.tsx |
38 | 0 | 38 |
platform/frontend/components/inbox/SavedPromptsList.tsx |
122 | 0 | 122 |
platform/frontend/components/inbox/SavedPromptsPanel.tsx |
1 | 4 | -3 |
platform/frontend/components/inbox/StatusMessage.tsx |
53 | 0 | 53 |
platform/frontend/components/inbox/StepByStepActionCard.tsx |
154 | 0 | 154 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
59 | 20 | 39 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
30 | 9 | 21 |
platform/frontend/components/ui/sheet.tsx |
143 | 0 | 143 |
platform/frontend/lib/command-palette-events.ts |
1 | 0 | 1 |
Verify this commit:
git show --stat 94238154875e27f707ec08f068b6bf125111ae83Full Hash: 69d14ea733efd39c353000ecda9898d931b69a47
Short Hash: 69d14ea
Timestamp: 2025-11-08 15:25:20 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 49 files changed, 19740 insertions(+), 1990 deletions(-), net: 17750 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/design/ICON_UI_ELEMENT_REFERENCE.md |
377 | 0 | 377 |
platform/backend/2ndclientfile.tsx |
2713 | 0 | 2713 |
platform/backend/wldrtn.tsx |
2711 | 0 | 2711 |
platform/frontend/app/dashboard/inbox/ClientPage.js |
10544 | 0 | 10544 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
433 | 404 | 29 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
58 | 388 | -330 |
platform/frontend/app/dashboard/inbox/thinking-steps.js |
55 | 0 | 55 |
platform/frontend/app/dashboard/inbox/types.js |
14 | 0 | 14 |
platform/frontend/app/globals.css |
142 | 66 | 76 |
platform/frontend/app/layout.tsx |
8 | 0 | 8 |
platform/frontend/components/command-palette/CommandPalette.tsx |
620 | 428 | 192 |
platform/frontend/components/inbox/ActionBar.tsx |
20 | 10 | 10 |
platform/frontend/components/inbox/AssistantEmptyState.tsx |
59 | 0 | 59 |
platform/frontend/components/inbox/AssistantHeaderCard.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/AssistantLanding.tsx |
11 | 8 | 3 |
platform/frontend/components/inbox/AssistantPane.tsx |
452 | 0 | 452 |
platform/frontend/components/inbox/AvatarMenu.tsx |
81 | 47 | 34 |
platform/frontend/components/inbox/CTAPills.tsx |
87 | 0 | 87 |
platform/frontend/components/inbox/ChatHistoryModal.tsx |
163 | 0 | 163 |
platform/frontend/components/inbox/ChipBadge.tsx |
5 | 5 | 0 |
platform/frontend/components/inbox/ComposeModal.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/EmailContextMenu.tsx |
15 | 4 | 11 |
platform/frontend/components/inbox/EmailDetail.tsx |
31 | 31 | 0 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
116 | 198 | -82 |
platform/frontend/components/inbox/InboxDropdown.tsx |
120 | 0 | 120 |
platform/frontend/components/inbox/InboxShellPlanB.tsx |
85 | 0 | 85 |
platform/frontend/components/inbox/InboxTabs.tsx |
4 | 4 | 0 |
platform/frontend/components/inbox/InputLarge.tsx |
17 | 13 | 4 |
platform/frontend/components/inbox/LAYOUT_SPECIFICATIONS.md |
169 | 0 | 169 |
platform/frontend/components/inbox/ListEmptyState.tsx |
55 | 0 | 55 |
platform/frontend/components/inbox/ReplyComposer.tsx |
3 | 3 | 0 |
platform/frontend/components/inbox/ScheduleSendModal.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/ScopeSwitcher.tsx |
1 | 1 | 0 |
platform/frontend/components/inbox/SearchInput.tsx |
54 | 37 | 17 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
11 | 11 | 0 |
platform/frontend/components/inbox/StickySectionHeader.tsx |
65 | 0 | 65 |
platform/frontend/components/inbox/ThreadRow.tsx |
18 | 13 | 5 |
platform/frontend/components/inbox/TodosEmptyState.tsx |
88 | 0 | 88 |
platform/frontend/components/inbox/TopbarIconButton.tsx |
13 | 29 | -16 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
61 | 238 | -177 |
platform/frontend/components/inbox/icons/ThreeDotsHorizontal.tsx |
31 | 0 | 31 |
platform/frontend/hooks/useFeatureFlags.tsx |
16 | 0 | 16 |
platform/frontend/hooks/useGmailShortcuts.ts |
9 | 0 | 9 |
platform/frontend/hooks/useKeyboardNavigation.ts |
92 | 0 | 92 |
platform/frontend/hooks/useTheme.ts |
29 | 0 | 29 |
platform/frontend/lib/command-palette-events.ts |
11 | 0 | 11 |
platform/frontend/lib/feature-flags.ts |
2 | 0 | 2 |
platform/frontend/styles/tokens.css |
63 | 46 | 17 |
platform/frontend/tailwind.config.ts |
5 | 3 | 2 |
Verify this commit:
git show --stat 69d14ea733efd39c353000ecda9898d931b69a47Full Hash: 0c3bf6b60d6dc89158cee8265ea5fe3bb007d805
Short Hash: 0c3bf6b
Timestamp: 2025-11-08 15:04:01 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix topbar layout: add grid/AI icons, center search bar, add settings/theme toggle to desktop
Summary: 2 files changed, 52 insertions(+), 96 deletions(-), net: -44 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/HeaderControlGutter.tsx |
3 | 1 | 2 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
49 | 95 | -46 |
Verify this commit:
git show --stat 0c3bf6b60d6dc89158cee8265ea5fe3bb007d805Full Hash: 58fc3e5d0ceeb65db6598ae156cb0e7ed0bce675
Short Hash: 58fc3e5
Timestamp: 2025-11-08 14:21:28 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Update search bar: max-w-lg (512px), flex-1, rounded-lg, px-3 padding
Summary: 1 files changed, 2 insertions(+), 2 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/InboxPlanB.tsx |
2 | 2 | 0 |
Verify this commit:
git show --stat 58fc3e5d0ceeb65db6598ae156cb0e7ed0bce675Full Hash: aea9ceb0d8ca64659bf2b3a8c35038f345084859
Short Hash: aea9ceb
Timestamp: 2025-11-08 14:21:08 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Remove navigation arrows from tabs section
Summary: 1 files changed, 23 insertions(+), 44 deletions(-), net: -21 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/InboxPlanB.tsx |
23 | 44 | -21 |
Verify this commit:
git show --stat aea9ceb0d8ca64659bf2b3a8c35038f345084859Full Hash: c8ac6aaa4b5cd3521d8a792334e24a559f8c4259
Short Hash: c8ac6aa
Timestamp: 2025-11-08 14:20:48 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Update Compose button styling: blue-600 background, gap-5 spacing, shadow-sm, mr-2 icon spacing
Summary: 1 files changed, 3 insertions(+), 3 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/InboxPlanB.tsx |
3 | 3 | 0 |
Verify this commit:
git show --stat c8ac6aaa4b5cd3521d8a792334e24a559f8c4259Full Hash: f727797138b6d91b6d18b5e3f0d938d46621ecc8
Short Hash: f727797
Timestamp: 2025-11-08 14:20:31 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix inbox header layout: center search bar, position inbox dropdown to its left, move gear/sun icons to right gutter panel
Summary: 2 files changed, 150 insertions(+), 109 deletions(-), net: 41 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/InboxPlanB.tsx |
84 | 109 | -25 |
platform/frontend/components/inbox/RightGutterPanel.tsx |
66 | 0 | 66 |
Verify this commit:
git show --stat f727797138b6d91b6d18b5e3f0d938d46621ecc8Full Hash: b4aad24078d2647fdb931769f59510a8a7d3eccc
Short Hash: b4aad24
Timestamp: 2025-11-08 14:19:19 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Update color specification with comprehensive details
Summary: 2 files changed, 88 insertions(+), 88 deletions(-), net: 0 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/design/colors.md |
80 | 83 | -3 |
platform/frontend/styles/tokens/colors.css |
8 | 5 | 3 |
Verify this commit:
git show --stat b4aad24078d2647fdb931769f59510a8a7d3ecccFull Hash: f67d0f6110708595da56cd5189879ca526311b94
Short Hash: f67d0f6
Timestamp: 2025-11-08 14:18:49 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Add centralized color token system
Summary: 5 files changed, 614 insertions(+), 125 deletions(-), net: 489 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
docs/design/colors.md |
396 | 0 | 396 |
platform/frontend/styles/dark-mode.css |
62 | 50 | 12 |
platform/frontend/styles/tokens.css |
59 | 52 | 7 |
platform/frontend/styles/tokens/colors.css |
74 | 0 | 74 |
platform/frontend/styles/tokens/composer.css |
23 | 23 | 0 |
Verify this commit:
git show --stat f67d0f6110708595da56cd5189879ca526311b94Full Hash: eda05e4ec80b956e199adbd50e47bbac92052583
Short Hash: eda05e4
Timestamp: 2025-11-08 13:55:53 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Update inbox colors to match Figma design
Summary: 5 files changed, 972 insertions(+), 35 deletions(-), net: 937 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/components/inbox/ChipBadge.tsx |
79 | 0 | 79 |
platform/frontend/components/inbox/InboxPlanB.tsx |
457 | 0 | 457 |
platform/frontend/components/inbox/InputLarge.tsx |
96 | 0 | 96 |
platform/frontend/components/inbox/ThreadRow.tsx |
216 | 0 | 216 |
platform/frontend/styles/tokens.css |
124 | 35 | 89 |
Verify this commit:
git show --stat eda05e4ec80b956e199adbd50e47bbac92052583Full Hash: 85c574ad22e3f64f888793adedf8b79d64cc5dfd
Short Hash: 85c574a
Timestamp: 2025-11-08 13:39:37 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix bundlesRef initialization error by moving ref declarations earlier
Summary: 1 files changed, 30 insertions(+), 27 deletions(-), net: 3 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
30 | 27 | 3 |
Verify this commit:
git show --stat 85c574ad22e3f64f888793adedf8b79d64cc5dfdFull Hash: 4387f67f10882e92ad163960f621f462bfc35c8f
Short Hash: 4387f67
Timestamp: 2025-11-08 13:31:55 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Fix React hooks order violation in ClientPage
Summary: 1 files changed, 176 insertions(+), 3 deletions(-), net: 173 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
176 | 3 | 173 |
Verify this commit:
git show --stat 4387f67f10882e92ad163960f621f462bfc35c8fFull Hash: e3743fa327767ad43ae2ce7f7a6a4a0e1fa2d6e8
Short Hash: e3743fa
Timestamp: 2025-11-08 13:02:56 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: refactor: inbox clean split layout - remove gradients and floating window wrappers
Summary: 1 files changed, 10 insertions(+), 98 deletions(-), net: -88 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
10 | 98 | -88 |
Verify this commit:
git show --stat e3743fa327767ad43ae2ce7f7a6a4a0e1fa2d6e8Full Hash: 0108760965b70b420238464e7b73deb7138f8728
Short Hash: 0108760
Timestamp: 2025-11-08 12:52:49 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Refactor inbox UI: implement design tokens, grid layout, and selection bar
Summary: 28 files changed, 3307 insertions(+), 712 deletions(-), net: 2595 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
assistant-ui-redesign.plan.md |
299 | 0 | 299 |
docs/implementation/implementation-plan.md |
302 | 0 | 302 |
platform/frontend/app/dashboard/assistant/page.tsx |
2 | 2 | 0 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
452 | 240 | 212 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
2 | 1 | 1 |
platform/frontend/app/dashboard/inbox/inbox.css |
67 | 0 | 67 |
platform/frontend/app/dev/page.tsx |
2 | 1 | 1 |
platform/frontend/app/globals.css |
1 | 0 | 1 |
platform/frontend/app/onboarding/connect/page.tsx |
9 | 4 | 5 |
platform/frontend/components/FaviconManager.tsx |
87 | 0 | 87 |
platform/frontend/components/inbox/AssistantHeaderCard.tsx |
99 | 0 | 99 |
platform/frontend/components/inbox/AssistantLanding.tsx |
36 | 87 | -51 |
platform/frontend/components/inbox/EmailDetail.tsx |
58 | 132 | -74 |
platform/frontend/components/inbox/EmailList.tsx |
112 | 0 | 112 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
20 | 16 | 4 |
platform/frontend/components/inbox/EmptyChatScaffold.tsx |
177 | 0 | 177 |
platform/frontend/components/inbox/FullScreenComposer.tsx |
81 | 0 | 81 |
platform/frontend/components/inbox/IntelligenceSnapshot.tsx |
167 | 0 | 167 |
platform/frontend/components/inbox/ScopeSwitcher.tsx |
46 | 0 | 46 |
platform/frontend/components/inbox/SectionHeader.tsx |
4 | 2 | 2 |
platform/frontend/components/inbox/SelectionActionBar.tsx |
183 | 225 | -42 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
42 | 2 | 40 |
platform/frontend/components/inbox/design-spec-ux-ui.md |
808 | 0 | 808 |
platform/frontend/hooks/useAssistantV2Data.ts |
135 | 0 | 135 |
platform/frontend/public/favicon-dev.svg |
14 | 0 | 14 |
platform/frontend/public/favicon-local.svg |
14 | 0 | 14 |
platform/frontend/styles/tokens.css |
61 | 0 | 61 |
platform/frontend/tailwind.config.ts |
27 | 0 | 27 |
Verify this commit:
git show --stat 0108760965b70b420238464e7b73deb7138f8728Full Hash: cc8b1ed03c672035d672cd61decacebb8c84677b
Short Hash: cc8b1ed
Timestamp: 2025-11-08 10:13:34 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: Polish assistant panel layout
Summary: 3 files changed, 54 insertions(+), 71 deletions(-), net: -17 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
4 | 6 | -2 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
3 | 3 | 0 |
platform/frontend/components/inbox/AssistantLanding.tsx |
47 | 62 | -15 |
Verify this commit:
git show --stat cc8b1ed03c672035d672cd61decacebb8c84677bFull Hash: d58da0b4b37c356eb06b2b472e32ce375098903a
Short Hash: d58da0b
Timestamp: 2025-11-08 10:00:04 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: feat: Implement assistant-style two-panel UI redesign
Summary: 6 files changed, 468 insertions(+), 420 deletions(-), net: 48 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
107 | 168 | -61 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
178 | 172 | 6 |
platform/frontend/components/inbox/AssistantInput.tsx |
33 | 75 | -42 |
platform/frontend/components/inbox/AssistantLanding.tsx |
120 | 0 | 120 |
platform/frontend/components/inbox/InboxTabs.tsx |
21 | 5 | 16 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
9 | 0 | 9 |
Verify this commit:
git show --stat d58da0b4b37c356eb06b2b472e32ce375098903aFull Hash: 46b2aae61e7edf9372f341950681e96723522cce
Short Hash: 46b2aae
Timestamp: 2025-11-08 08:58:51 -0800
Author: Sebastian Heyneman sebastian@joinnova.com
Message: >
Summary: 15 files changed, 3841 insertions(+), 743 deletions(-), net: 3098 lines
| File | Insertions | Deletions | Net |
|---|---|---|---|
EMAIL_CONTENT_LOGGING_SECURITY.md |
109 | 0 | 109 |
Makefile |
111 | 5 | 106 |
Makefile.backup.before-fix |
2263 | 0 | 2263 |
platform/backend/scripts/check_email_logging.py |
108 | 0 | 108 |
platform/frontend/app/dashboard/inbox/ClientPage.tsx |
195 | 179 | 16 |
platform/frontend/app/dashboard/inbox/__tests__/InboxTabs.test.tsx |
1 | 1 | 0 |
platform/frontend/app/dashboard/inbox/inbox-email-styles.css |
330 | 7 | 323 |
platform/frontend/components/inbox/AssistantInput.tsx |
24 | 8 | 16 |
platform/frontend/components/inbox/EmailPreviewRow.tsx |
8 | 10 | -2 |
platform/frontend/components/inbox/InboxTabs.tsx |
5 | 25 | -20 |
platform/frontend/components/inbox/SearchInput.tsx |
34 | 43 | -9 |
platform/frontend/components/inbox/TabsToggle.tsx |
27 | 48 | -21 |
platform/frontend/components/inbox/UnifiedTopBar.tsx |
147 | 417 | -270 |
website/app/page.tsx |
19 | 0 | 19 |
website/components/ProductEmailPreview.tsx |
460 | 0 | 460 |
Verify this commit:
git show --stat 46b2aae61e7edf9372f341950681e96723522cce| # | Commit Hash | Timestamp | Files | +Lines | -Lines | Net | Message |
|---|---|---|---|---|---|---|---|
| 1 | 9ceb4c4 |
2025-11-14 21:13:19 | 19 | 3111 | 313 | 2798 | chore: auto-commit 2025-11-15 05:13:19 UTC |
| 2 | 9f84bb1 |
2025-11-14 20:47:44 | 3 | 290 | 1 | 289 | chore: auto-commit 2025-11-15 04:47:44 UTC |
| 3 | ea2e7cd |
2025-11-14 20:47:22 | 1 | 9 | 1 | 8 | chore: auto-commit 2025-11-15 04:47:22 UTC |
| 4 | 7630287 |
2025-11-14 20:47:21 | 1 | 9 | 1 | 8 | chore: auto-commit 2025-11-15 04:47:21 UTC |
| 5 | 2302bc9 |
2025-11-14 20:47:19 | 3 | 86 | 3 | 83 | chore: auto-commit 2025-11-15 04:47:19 UTC |
| 6 | b71695e |
2025-11-14 20:47:12 | 9 | 1111 | 61 | 1050 | chore: auto-commit 2025-11-15 04:47:12 UTC |
| 7 | e3fc3bf |
2025-11-14 20:41:26 | 2 | 3 | 619 | -616 | chore: auto-commit 2025-11-15 04:41:26 UTC |
| 8 | 62f7b52 |
2025-11-14 20:40:07 | 13 | 1209 | 84 | 1125 | chore: auto-commit 2025-11-15 04:40:07 UTC |
| 9 | 5f463ad |
2025-11-14 20:25:42 | 2 | 46 | 5996 | -5950 | chore: auto-commit 2025-11-15 04:25:42 UTC |
| 10 | 2cfb56a |
2025-11-14 20:23:30 | 4 | 235 | 234 | 1 | chore: auto-commit 2025-11-15 04:23:30 UTC |
| 11 | ed5e122 |
2025-11-14 19:18:26 | 3 | 2382 | 2305 | 77 | chore: auto-commit 2025-11-15 03:18:25 UTC |
| 12 | 7fdcac2 |
2025-11-14 19:15:20 | 9 | 7982 | 5194 | 2788 | chore: auto-commit 2025-11-15 03:15:20 UTC |
| 13 | e8564a6 |
2025-11-14 19:07:19 | 10 | 2157 | 39 | 2118 | chore: auto-commit 2025-11-15 03:07:19 UTC |
| 14 | 7978f19 |
2025-11-14 19:01:46 | 1 | 20 | 44 | -24 | chore: auto-commit 2025-11-15 03:01:46 UTC |
| 15 | 4c82645 |
2025-11-14 19:01:21 | 3 | 226 | 188 | 38 | chore: auto-commit 2025-11-15 03:01:21 UTC |
| 16 | 24dbb85 |
2025-11-14 18:58:56 | 2 | 140 | 128 | 12 | chore: auto-commit 2025-11-15 02:58:55 UTC |
| 17 | 8bc1e9c |
2025-11-14 18:57:42 | 2 | 84 | 373 | -289 | chore: auto-commit 2025-11-15 02:57:41 UTC |
| 18 | e248eb7 |
2025-11-14 18:55:12 | 3 | 16854 | 436 | 16418 | chore: auto-commit 2025-11-15 02:55:12 UTC |
| 19 | f9741d6 |
2025-11-14 18:53:55 | 2 | 256 | 214 | 42 | chore: auto-commit 2025-11-15 02:53:54 UTC |
| 20 | ecdc258 |
2025-11-14 18:52:03 | 2 | 370 | 63 | 307 | chore: auto-commit 2025-11-15 02:52:03 UTC |
| 21 | c04f27e |
2025-11-14 18:50:50 | 2 | 206 | 74 | 132 | chore: auto-commit 2025-11-15 02:50:50 UTC |
| 22 | 9adfcc0 |
2025-11-14 18:50:00 | 2 | 223 | 46 | 177 | chore: auto-commit 2025-11-15 02:50:00 UTC |
| 23 | 97e93d0 |
2025-11-14 18:47:39 | 1 | 2 | 176 | -174 | chore: auto-commit 2025-11-15 02:47:39 UTC |
| 24 | 577defe |
2025-11-14 18:47:05 | 2 | 612 | 614 | -2 | chore: auto-commit 2025-11-15 02:47:05 UTC |
| 25 | dccf2e8 |
2025-11-14 18:44:22 | 2 | 772 | 596 | 176 | chore: auto-commit 2025-11-15 02:44:21 UTC |
| 26 | 08b8374 |
2025-11-14 18:43:04 | 1 | 47 | 0 | 47 | chore: auto-commit 2025-11-15 02:43:04 UTC |
| 27 | 19a520b |
2025-11-14 18:40:48 | 2 | 2 | 186 | -184 | chore: auto-commit 2025-11-15 02:40:48 UTC |
| 28 | c339d59 |
2025-11-14 18:37:54 | 3 | 6903 | 1874 | 5029 | chore: auto-commit 2025-11-15 02:37:54 UTC |
| 29 | f5fdefd |
2025-11-14 18:35:43 | 6 | 295 | 156 | 139 | chore: auto-commit 2025-11-15 02:35:43 UTC |
| 30 | c3f2a7a |
2025-11-14 17:01:50 | 17 | 1297 | 16671 | -15374 | chore: auto-commit 2025-11-15 01:01:50 UTC |
| 31 | 3fbd361 |
2025-11-14 16:56:11 | 36 | 22605 | 1402 | 21203 | chore: auto-commit 2025-11-15 00:56:11 UTC |
| 32 | 5819e0d |
2025-11-14 16:07:37 | 2 | 424 | 8530 | -8106 | chore: auto-commit 2025-11-15 00:07:37 UTC |
| 33 | f00d0d4 |
2025-11-14 16:06:05 | 1 | 147 | 0 | 147 | chore: auto-commit 2025-11-15 00:06:05 UTC |
| 34 | 97c3b87 |
2025-11-14 16:05:47 | 24 | 9998 | 3453 | 6545 | chore: auto-commit 2025-11-15 00:05:47 UTC |
| 35 | a9ed40a |
2025-11-14 15:48:31 | 8 | 938 | 3 | 935 | feat(hubspot): add feature flag support |
| 36 | 163ada0 |
2025-11-14 15:32:23 | 13 | 5819 | 4178 | 1641 | chore: auto-commit 2025-11-14 23:32:22 UTC |
| 37 | 08c35b4 |
2025-11-14 15:18:55 | 1 | 130 | 0 | 130 | chore: auto-commit 2025-11-14 23:18:55 UTC |
| 38 | 574876f |
2025-11-14 15:18:42 | 9 | 6531 | 862 | 5669 | chore: auto-commit 2025-11-14 23:18:42 UTC |
| 39 | b050f4b |
2025-11-14 15:07:14 | 2 | 35 | 60 | -25 | chore: auto-commit 2025-11-14 23:07:14 UTC |
| 40 | 32c9602 |
2025-11-14 15:04:13 | 2 | 112 | 1264 | -1152 | chore: auto-commit 2025-11-14 23:04:13 UTC |
| 41 | 4c298f2 |
2025-11-14 15:02:29 | 2 | 1203 | 1016 | 187 | chore: auto-commit 2025-11-14 23:02:29 UTC |
| 42 | 78f3ca5 |
2025-11-14 15:01:00 | 1 | 120 | 0 | 120 | chore: auto-commit 2025-11-14 23:01:00 UTC |
| 43 | 2b1b72a |
2025-11-14 15:00:55 | 6 | 2329 | 529 | 1800 | chore: auto-commit 2025-11-14 23:00:55 UTC |
| 44 | 55725a6 |
2025-11-14 14:56:20 | 3 | 208 | 3733 | -3525 | chore: auto-commit 2025-11-14 22:56:20 UTC |
| 45 | e0eccd8 |
2025-11-14 14:54:21 | 6 | 6133 | 942 | 5191 | chore: auto-commit 2025-11-14 22:54:21 UTC |
| 46 | 23526b2 |
2025-11-14 14:34:20 | 62 | 763 | 190 | 573 | chore: auto-commit 2025-11-14 22:34:20 UTC |
| 47 | d116f1f |
2025-11-14 12:57:07 | 5 | 2035 | 4542 | -2507 | chore: auto-commit 2025-11-14 20:57:07 UTC |
| 48 | 2b9b9fa |
2025-11-14 12:29:39 | 21 | 6933 | 1188 | 5745 | chore: auto-commit 2025-11-14 20:29:39 UTC |
| 49 | a7cf0f8 |
2025-11-14 12:17:25 | 2 | 2206 | 119 | 2087 | chore: auto-commit 2025-11-14 20:17:25 UTC |
| 50 | 25888f6 |
2025-11-14 12:14:20 | 1 | 111 | 0 | 111 | chore: auto-commit 2025-11-14 20:14:20 UTC |
| 51 | 8617ebf |
2025-11-14 12:13:45 | 3 | 35 | 429 | -394 | chore: auto-commit 2025-11-14 20:13:45 UTC |
| 52 | 44e8fed |
2025-11-14 12:12:12 | 7 | 684 | 116 | 568 | chore: auto-commit 2025-11-14 20:12:12 UTC |
| 53 | ee08d9b |
2025-11-14 12:10:25 | 3 | 99 | 284 | -185 | chore: auto-commit 2025-11-14 20:10:25 UTC |
| 54 | 810f16e |
2025-11-14 12:09:25 | 2 | 79 | 532 | -453 | chore: auto-commit 2025-11-14 20:09:25 UTC |
| 55 | be67db3 |
2025-11-14 12:08:29 | 4 | 817 | 111 | 706 | chore: auto-commit 2025-11-14 20:08:29 UTC |
| 56 | 3c4785a |
2025-11-14 12:06:47 | 2 | 6 | 716 | -710 | chore: auto-commit 2025-11-14 20:06:47 UTC |
| 57 | 1ee9935 |
2025-11-14 12:05:35 | 74 | 1695 | 311 | 1384 | chore: auto-commit 2025-11-14 20:05:35 UTC |
| 58 | 4a89f39 |
2025-11-14 11:39:45 | 11 | 1129 | 6600 | -5471 | chore: auto-commit 2025-11-14 19:39:45 UTC |
| 59 | 0b9be96 |
2025-11-14 11:35:37 | 7 | 5448 | 6381 | -933 | chore: auto-commit 2025-11-14 19:35:37 UTC |
| 60 | 6776d6f |
2025-11-14 10:48:21 | 4 | 3800 | 6602 | -2802 | chore: auto-commit 2025-11-14 18:48:21 UTC |
| 61 | 5194c89 |
2025-11-14 09:49:19 | 1 | 128 | 0 | 128 | chore: auto-commit 2025-11-14 17:49:19 UTC |
| 62 | 35fbd73 |
2025-11-14 09:49:12 | 10 | 11329 | 27734 | -16405 | chore: auto-commit 2025-11-14 17:49:12 UTC |
| 63 | ff4e69d |
2025-11-14 09:36:35 | 1 | 2 | 0 | 2 | chore: auto-commit 2025-11-14 17:36:35 UTC |
| 64 | 04c8c14 |
2025-11-14 09:36:25 | 59 | 250 | 3242 | -2992 | chore: auto-commit 2025-11-14 17:36:25 UTC |
| 65 | 477c3e3 |
2025-11-14 09:32:46 | 1 | 4 | 34 | -30 | fix: Consolidate duplicate Gmail tool constants and fix NameError |
| 66 | 7d85b11 |
2025-11-14 09:28:59 | 9 | 3558 | 289 | 3269 | chore: auto-commit 2025-11-14 17:28:59 UTC |
| 67 | ae68a09 |
2025-11-14 09:19:38 | 1 | 3 | 20 | -17 | fix: Gmail tool routing and action box display issues |
| 68 | f73f21e |
2025-11-14 09:18:49 | 4 | 757 | 7622 | -6865 | chore: auto-commit 2025-11-14 17:18:49 UTC |
| 69 | a5ee4da |
2025-11-14 09:17:03 | 2 | 221 | 0 | 221 | chore: auto-commit 2025-11-14 17:17:03 UTC |
| 70 | cf404aa |
2025-11-14 09:17:02 | 8 | 7135 | 2279 | 4856 | chore: auto-commit 2025-11-14 17:17:02 UTC |
| 71 | 4268645 |
2025-11-14 09:08:38 | 1 | 20 | 0 | 20 | chore: auto-commit 2025-11-14 17:08:38 UTC |
| 72 | 7f9ff46 |
2025-11-14 09:08:33 | 4 | 2357 | 4100 | -1743 | chore: auto-commit 2025-11-14 17:08:33 UTC |
| 73 | bfa1c92 |
2025-11-14 08:58:45 | 1 | 148 | 0 | 148 | fix: Handle orphaned tool_use blocks when resuming conversations |
| 74 | b7c904a |
2025-11-14 08:54:40 | 1 | 92 | 0 | 92 | fix: Add placeholder tool_results for all remaining tools on interrupts |
| 75 | bf7a076 |
2025-11-14 08:51:03 | 3 | 7778 | 4452 | 3326 | chore: auto-commit 2025-11-14 16:51:03 UTC |
| 76 | cde53e1 |
2025-11-14 08:43:24 | 1 | 129 | 16 | 113 | fix: Display agent text alongside action boxes |
| 77 | 2e68f21 |
2025-11-14 08:34:41 | 7 | 8708 | 1835 | 6873 | chore: auto-commit 2025-11-14 16:34:41 UTC |
| 78 | 92d9f52 |
2025-11-14 08:27:06 | 4 | 2272 | 406 | 1866 | chore: auto-commit 2025-11-14 16:27:06 UTC |
| 79 | ccca3c6 |
2025-11-14 08:22:03 | 3 | 18469 | 4925 | 13544 | chore: auto-commit 2025-11-14 16:22:03 UTC |
| 80 | 92e87b3 |
2025-11-14 08:18:06 | 1 | 76 | 0 | 76 | chore: auto-commit 2025-11-14 16:18:06 UTC |
| 81 | 94bb0f1 |
2025-11-14 08:17:59 | 9 | 5678 | 34769 | -29091 | chore: auto-commit 2025-11-14 16:17:59 UTC |
| 82 | 6e13ed0 |
2025-11-14 08:08:27 | 2 | 2 | 3166 | -3164 | chore: auto-commit 2025-11-14 16:08:27 UTC |
| 83 | 215ae30 |
2025-11-14 08:07:33 | 1 | 1 | 1 | 0 | chore: auto-commit 2025-11-14 16:07:33 UTC |
| 84 | 9140a67 |
2025-11-14 08:07:28 | 8 | 3074 | 182 | 2892 | chore: auto-commit 2025-11-14 16:07:28 UTC |
| 85 | a9e9169 |
2025-11-14 08:03:05 | 4 | 251 | 4319 | -4068 | chore: auto-commit 2025-11-14 16:03:05 UTC |
| 86 | ad879af |
2025-11-14 08:02:05 | 2 | 136 | 5 | 131 | chore: auto-commit 2025-11-14 16:02:05 UTC |
| 87 | d9db51c |
2025-11-14 08:01:58 | 12 | 32165 | 9130 | 23035 | chore: auto-commit 2025-11-14 16:01:58 UTC |
| 88 | b6b746e |
2025-11-14 07:50:29 | 11 | 18859 | 18143 | 716 | chore: auto-commit 2025-11-14 15:50:29 UTC |
| 89 | 8f6c409 |
2025-11-14 07:33:44 | 4 | 1029 | 331 | 698 | fix: enable assistant interruption to disable queueing |
| 90 | 647c290 |
2025-11-14 07:30:28 | 3 | 18485 | 1219 | 17266 | chore: auto-commit 2025-11-14 15:30:28 UTC |
| 91 | a370914 |
2025-11-14 07:28:24 | 1 | 14 | 7 | 7 | fix: remove all queueing logic for simpler turn-based flow |
| 92 | eac55f8 |
2025-11-14 07:28:20 | 2 | 615 | 731 | -116 | chore: auto-commit 2025-11-14 15:28:20 UTC |
| 93 | 4f9edc1 |
2025-11-14 07:26:22 | 3 | 1434 | 562 | 872 | chore: auto-commit 2025-11-14 15:26:22 UTC |
| 94 | f8d61fa |
2025-11-14 07:23:42 | 1 | 120 | 101 | 19 | refactor: complete turn-based response handling for agent.response |
| 95 | afc40de |
2025-11-14 07:21:33 | 2 | 508 | 534 | -26 | chore: auto-commit 2025-11-14 15:21:32 UTC |
| 96 | d197f19 |
2025-11-14 07:19:53 | 2 | 670 | 1177 | -507 | chore: auto-commit 2025-11-14 15:19:53 UTC |
| 97 | 6b2b94f |
2025-11-14 07:18:53 | 3 | 1175 | 589 | 586 | fix: resolve agent.response content display issue |
| 98 | 90c30f8 |
2025-11-14 07:14:17 | 1 | 89 | 0 | 89 | chore: auto-commit 2025-11-14 15:14:17 UTC |
| 99 | 0fec48b |
2025-11-14 07:13:59 | 2 | 445 | 626 | -181 | fix: resolve AI conversation display issues |
| 100 | 89ca0c0 |
2025-11-14 07:08:34 | 4 | 883 | 119 | 764 | chore: auto-commit 2025-11-14 15:08:34 UTC |
| 101 | 6783730 |
2025-11-13 23:08:52 | 60 | 150 | 1797 | -1647 | chore: auto-commit 2025-11-14 07:08:52 UTC |
| 102 | 6479b83 |
2025-11-13 23:04:02 | 11 | 2232 | 136 | 2096 | chore: auto-commit 2025-11-14 07:04:02 UTC |
| 103 | 81064fa |
2025-11-13 22:46:45 | 2 | 113 | 2 | 111 | chore: auto-commit 2025-11-14 06:46:45 UTC |
| 104 | f09a1c0 |
2025-11-13 22:45:41 | 2 | 13 | 119 | -106 | chore: auto-commit 2025-11-14 06:45:41 UTC |
| 105 | 8ac5036 |
2025-11-13 22:45:10 | 2 | 59 | 28 | 31 | chore: auto-commit 2025-11-14 06:45:10 UTC |
| 106 | 2ddd35e |
2025-11-13 22:43:31 | 2 | 126 | 16 | 110 | chore: auto-commit 2025-11-14 06:43:30 UTC |
| 107 | 947d601 |
2025-11-13 22:39:44 | 3 | 70 | 39 | 31 | chore: auto-commit 2025-11-14 06:39:44 UTC |
| 108 | 1ce4521 |
2025-11-13 22:37:12 | 3 | 21 | 797 | -776 | chore: auto-commit 2025-11-14 06:37:12 UTC |
| 109 | 174fe71 |
2025-11-13 22:36:10 | 3 | 520 | 608 | -88 | chore: auto-commit 2025-11-14 06:36:10 UTC |
| 110 | 5460169 |
2025-11-13 22:33:52 | 2 | 786 | 107 | 679 | chore: auto-commit 2025-11-14 06:33:52 UTC |
| 111 | 6224434 |
2025-11-13 22:32:04 | 1 | 108 | 108 | 0 | chore: auto-commit 2025-11-14 06:32:04 UTC |
| 112 | 1fb9555 |
2025-11-13 22:31:15 | 2 | 48 | 4 | 44 | chore: auto-commit 2025-11-14 06:31:15 UTC |
| 113 | a1eef56 |
2025-11-13 22:30:09 | 5 | 153 | 852 | -699 | chore: auto-commit 2025-11-14 06:30:09 UTC |
| 114 | 16fde06 |
2025-11-13 22:26:58 | 3 | 300 | 550 | -250 | chore: auto-commit 2025-11-14 06:26:58 UTC |
| 115 | d76f9b0 |
2025-11-13 22:25:15 | 1 | 761 | 0 | 761 | docs(observability): add comprehensive Langfuse spec documenting all issues and fixes |
| 116 | e25f1c7 |
2025-11-13 22:22:24 | 1 | 296 | 0 | 296 | docs(observability): add comprehensive Langfuse integration documentation |
| 117 | da3171b |
2025-11-13 22:21:38 | 3 | 1015 | 295 | 720 | chore: auto-commit 2025-11-14 06:21:38 UTC |
| 118 | 222403b |
2025-11-13 22:16:26 | 10 | 1042 | 392 | 650 | chore: auto-commit 2025-11-14 06:16:26 UTC |
| 119 | b150af0 |
2025-11-13 22:03:58 | 3 | 1441 | 181 | 1260 | chore: auto-commit 2025-11-14 06:03:58 UTC |
| 120 | 12143a4 |
2025-11-13 21:20:36 | 1 | 153 | 17 | 136 | chore: auto-commit 2025-11-14 05:20:36 UTC |
| 121 | dbc685f |
2025-11-13 21:15:06 | 1 | 12 | 203 | -191 | chore: auto-commit 2025-11-14 05:15:06 UTC |
| 122 | 5743879 |
2025-11-13 21:12:56 | 8 | 576 | 38 | 538 | feat(logging): enhance console logging with Pino and enable Langfuse |
| 123 | 8365441 |
2025-11-13 21:06:06 | 1 | 6 | 2 | 4 | chore: auto-commit 2025-11-14 05:06:06 UTC |
| 124 | e6694fc |
2025-11-13 21:02:25 | 1 | 204 | 47 | 157 | chore: auto-commit 2025-11-14 05:02:24 UTC |
| 125 | e6d169f |
2025-11-13 20:51:43 | 6 | 433 | 473 | -40 | chore: auto-commit 2025-11-14 04:51:43 UTC |
| 126 | 86b7ae7 |
2025-11-13 20:15:52 | 7 | 275 | 278 | -3 | chore: auto-commit 2025-11-14 04:15:52 UTC |
| 127 | 64a0861 |
2025-11-13 20:11:34 | 5 | 70 | 10 | 60 | chore: auto-commit 2025-11-14 04:11:34 UTC |
| 128 | e6d8f3a |
2025-11-13 20:09:15 | 12 | 1027 | 198 | 829 | chore: auto-commit 2025-11-14 04:09:15 UTC |
| 129 | f178f78 |
2025-11-13 19:58:15 | 76 | 668 | 925 | -257 | chore: auto-commit 2025-11-14 03:58:14 UTC |
| 130 | 5bf0d18 |
2025-11-13 19:44:58 | 2 | 8 | 2 | 6 | chore: auto-commit 2025-11-14 03:44:57 UTC |
| 131 | 9a8916f |
2025-11-13 19:44:40 | 19 | 1394 | 55 | 1339 | chore: auto-commit 2025-11-14 03:44:40 UTC |
| 132 | 63cc707 |
2025-11-13 19:18:27 | 49 | 2599 | 11675 | -9076 | chore: auto-commit 2025-11-14 03:18:27 UTC |
| 133 | 19b83ee |
2025-11-13 17:37:20 | 34 | 2679 | 853 | 1826 | chore: auto-commit 2025-11-14 01:37:20 UTC |
| 134 | c6e98b6 |
2025-11-13 16:10:13 | 6 | 240 | 94 | 146 | chore: auto-commit 2025-11-14 00:10:13 UTC |
| 135 | afa85aa |
2025-11-13 16:06:17 | 8 | 823 | 1010 | -187 | chore: auto-commit 2025-11-14 00:06:17 UTC |
| 136 | f72f9b2 |
2025-11-13 15:34:50 | 33 | 851 | 811 | 40 | chore: auto-commit 2025-11-13 23:34:50 UTC |
| 137 | 7d21a0c |
2025-11-13 14:49:00 | 5 | 353 | 197 | 156 | chore: auto-commit 2025-11-13 22:49:00 UTC |
| 138 | 9cfa883 |
2025-11-13 14:44:55 | 1 | 64 | 0 | 64 | chore: auto-commit 2025-11-13 22:44:55 UTC |
| 139 | 4dfdcb9 |
2025-11-13 14:44:44 | 2 | 144 | 100 | 44 | chore: auto-commit 2025-11-13 22:44:44 UTC |
| 140 | d6e6a2f |
2025-11-13 14:42:46 | 11 | 1160 | 70 | 1090 | chore: auto-commit 2025-11-13 22:42:46 UTC |
| 141 | 905a14d |
2025-11-13 14:33:33 | 18 | 178 | 105943 | -105765 | chore: auto-commit 2025-11-13 22:33:33 UTC |
| 142 | fb2ac72 |
2025-11-13 14:27:05 | 23 | 453 | 418 | 35 | chore: auto-commit 2025-11-13 22:27:05 UTC |
| 143 | db8bf83 |
2025-11-13 14:23:50 | 1 | 34 | 16 | 18 | chore: auto-commit 2025-11-13 22:23:50 UTC |
| 144 | 2ad97b7 |
2025-11-13 14:17:35 | 1 | 153 | 0 | 153 | chore: auto-commit 2025-11-13 22:17:35 UTC |
| 145 | 025c4ed |
2025-11-13 14:15:58 | 11 | 311 | 675 | -364 | chore: auto-commit 2025-11-13 22:15:58 UTC |
| 146 | 114c99c |
2025-11-13 14:02:43 | 1 | 3 | 3 | 0 | chore: auto-commit 2025-11-13 22:02:43 UTC |
| 147 | 10b0f2d |
2025-11-13 14:02:29 | 7 | 759 | 191 | 568 | chore: auto-commit 2025-11-13 22:02:29 UTC |
| 148 | 561abbf |
2025-11-13 13:56:14 | 6 | 288 | 173 | 115 | > |
| 149 | 1d29317 |
2025-11-13 13:49:35 | 1 | 11 | 4 | 7 | > |
| 150 | b3f6403 |
2025-11-13 13:48:41 | 4 | 169 | 339 | -170 | > |
| 151 | 57a2743 |
2025-11-13 13:45:13 | 2 | 120 | 22 | 98 | > |
| 152 | 1564d77 |
2025-11-13 13:39:55 | 2 | 39 | 1 | 38 | > |
| 153 | 79ef4d5 |
2025-11-13 13:35:16 | 11 | 1235 | 223 | 1012 | > |
| 154 | 466eb5c |
2025-11-13 13:12:20 | 57 | 3706 | 3075 | 631 | > |
| 155 | 5768299 |
2025-11-13 12:11:06 | 2 | 109 | 317 | -208 | > |
| 156 | b6b03cd |
2025-11-13 12:01:09 | 3 | 32 | 260 | -228 | > |
| 157 | 2a26693 |
2025-11-13 11:58:10 | 1 | 18 | 24 | -6 | feat: Add CODEOWNERS for mandatory code review |
| 158 | a656042 |
2025-11-13 11:46:25 | 46 | 5847 | 9851 | -4004 | > |
| 159 | b37dc2b |
2025-11-13 09:19:08 | 17 | 3295 | 3 | 3292 | > |
| 160 | 84b50d1 |
2025-11-13 09:17:17 | 66 | 60267 | 65131 | -4864 | before deleting backend py toml |
| 161 | 0213993 |
2025-11-12 19:50:04 | 148 | 3512 | 98 | 3414 | > |
| 162 | bd3fc6e |
2025-11-12 19:47:21 | 11 | 564 | 227166 | -226602 | > |
| 163 | ebc89c6 |
2025-11-12 19:29:28 | 52 | 29561 | 387 | 29174 | > |
| 164 | 2decb05 |
2025-11-12 18:29:37 | 69 | 125022 | 67452 | 57570 | > |
| 165 | def0e9d |
2025-11-12 17:34:56 | 98 | 61303 | 37540 | 23763 | > |
| 166 | ae839eb |
2025-11-12 15:33:03 | 283 | 119225 | 44761 | 74464 | > |
| 167 | f610603 |
2025-11-11 13:25:11 | 37 | 4844 | 280 | 4564 | > |
| 168 | b2b7453 |
2025-11-11 12:43:20 | 55 | 49943 | 280 | 49663 | > |
| 169 | ee1fe60 |
2025-11-11 12:04:21 | 2 | 78 | 12 | 66 | Add OpenAI Agents SDK tracing support for cleaner debug logs |
| 170 | c67c13d |
2025-11-11 10:56:39 | 11 | 47347 | 22977 | 24370 | > |
| 171 | cbac63f |
2025-11-11 09:46:56 | 4 | 24681 | 5 | 24676 | Enhance fixes: filter private messages, improve action box preservation, add CSS for non-blocking UI |
| 172 | 81e7deb |
2025-11-11 09:27:48 | 7 | 4611 | 15 | 4596 | Fix three critical issues: SyntaxError, action box preservation, and UI blocking |
| 173 | 0a6d98a |
2025-11-11 09:17:35 | 35 | 82721 | 4 | 82717 | > |
| 174 | 880f497 |
2025-11-11 09:16:59 | 3 | 325 | 0 | 325 | > |
| 175 | c38f6fc |
2025-11-11 09:16:44 | 1 | 2 | 0 | 2 | > |
| 176 | 6d6e72a |
2025-11-11 09:16:11 | 121 | 93 | 253 | -160 | > |
| 177 | 48c4fbe |
2025-11-11 00:51:32 | 157 | 9090 | 1320 | 7770 | > |
| 178 | 3166582 |
2025-11-10 23:26:17 | 6 | 392 | 278 | 114 | > |
| 179 | 2aeb545 |
2025-11-10 23:13:56 | 7 | 217 | 42 | 175 | > |
| 180 | 1974b1c |
2025-11-10 23:00:59 | 8 | 812 | 215 | 597 | > |
| 181 | d40cbe0 |
2025-11-10 22:30:01 | 36 | 3919 | 633 | 3286 | > |
| 182 | e176fa3 |
2025-11-10 21:03:51 | 58 | 1674 | 963 | 711 | > |
| 183 | 5a6a107 |
2025-11-10 19:09:28 | 8 | 184 | 23 | 161 | Fix queue handling logic: pass session_id when starting next tasks |
| 184 | a3e9378 |
2025-11-10 19:05:28 | 24 | 1193 | 599 | 594 | > |
| 185 | ec5ed01 |
2025-11-10 18:38:59 | 11 | 648 | 528 | 120 | Fix infinite loop in compose button and email opening bug |
| 186 | 289739c |
2025-11-10 18:16:50 | 7 | 581 | 139 | 442 | WIP: Inbox UI improvements - top bar and component updates |
| 187 | 07948e0 |
2025-11-10 18:03:10 | 18 | 536 | 425 | 111 | Fix Gmail Pub/Sub security and infrastructure issues |
| 188 | 2590296 |
2025-11-10 17:50:13 | 9 | 609 | 88 | 521 | WIP: Inbox improvements - attachment badges, hover states, and sync service updates |
| 189 | 9c18dfb |
2025-11-10 17:41:46 | 7 | 376 | 194 | 182 | Fix PlanB inbox section header width alignment and formatting |
| 190 | 2fc607a |
2025-11-10 17:14:22 | 93 | 4456 | 1535 | 2921 | > |
| 191 | 45d2725 |
2025-11-10 10:17:04 | 1 | 4 | 2 | 2 | Fix TypeScript errors in ClientPage |
| 192 | 32983e3 |
2025-11-10 10:14:49 | 2 | 44 | 52 | -8 | Fix autoFullscreenRef undefined error in AgentChatPanel |
| 193 | 8d41f39 |
2025-11-10 10:08:19 | 1 | 1 | 1 | 0 | Use npm install instead of npm ci for Vercel builds to ensure devDependencies are installed |
| 194 | 71e1caf |
2025-11-10 10:08:13 | 1 | 1 | 1 | 0 | Fix Vercel build: ensure devDependencies are installed |
| 195 | 1c91ae5 |
2025-11-10 10:05:01 | 18 | 348 | 355 | -7 | Fix TypeScript errors and add npm deployment scripts |
| 196 | c9d3ac5 |
2025-11-10 09:19:14 | 1 | 1 | 1 | 0 | fix: move tailwindcss to dependencies for Vercel build |
| 197 | 9ce47f2 |
2025-11-10 09:17:04 | 0 | 0 | 0 | 0 | Merge branch 'main' of github.com:joinnova-ci/autoflow-platform |
| 198 | 54a398e |
2025-11-10 09:16:24 | 31 | 1968 | 758 | 1210 | deploy: Sync environment variables to dev |
| 199 | 169f8e8 |
2025-11-10 00:25:47 | 120 | 22436 | 1633 | 20803 | > |
| 200 | 7079901 |
2025-11-09 15:34:33 | 206 | 23951 | 4481 | 19470 | nice agent panel |
| 201 | 7c31212 |
2025-11-08 23:52:40 | 1 | 6 | 0 | 6 | fix: add webpack alias configuration for @/ paths |
| 202 | 90b9457 |
2025-11-08 23:50:36 | 1 | 1 | 1 | 0 | fix: install Next.js at root for Vercel detection |
| 203 | 3effff7 |
2025-11-08 23:47:02 | 3 | 27 | 0 | 27 | docs: update workflow comments with required PR checks |
| 204 | 715bc71 |
2025-11-08 23:45:57 | 2 | 0 | 2 | -2 | chore: remove legacy Vercel autoflow-platform check |
| 205 | 1fd878b |
2025-11-08 23:44:39 | 2 | 113 | 0 | 113 | docs: add branch protection setup script and update required checks |
| 206 | 9d3ee68 |
2025-11-08 23:38:16 | 2 | 432 | 0 | 432 | fix: add Next.js to root package.json for Vercel detection |
| 207 | 24422b7 |
2025-11-08 23:37:52 | 2 | 2 | 3 | -1 | fix: move tailwindcss-animate to dependencies for Vercel build |
| 208 | 33a24cd |
2025-11-08 23:36:04 | 15 | 891 | 129 | 762 | feat: add Render deployment checks, Codex reviews, and fix ESLint errors |
| 209 | 5c1ff3a |
2025-11-08 23:28:12 | 3 | 67 | 77 | -10 | chore: update inbox components (ClientPage, AssistantPane, InboxPlanB) |
| 210 | db88834 |
2025-11-08 23:27:32 | 1 | 9 | 0 | 9 | fix: add root package.json with vercel-build script for monorepo deployment |
| 211 | 1f155c7 |
2025-11-08 23:25:03 | 18 | 1215 | 1081 | 134 | feat: update inbox UI components and assistant functionality |
| 212 | f9ea9fc |
2025-11-08 22:47:25 | 41 | 4207 | 1718 | 2489 | > |
| 213 | 1eecf07 |
2025-11-08 19:22:58 | 38 | 1860 | 893 | 967 | > |
| 214 | 5b885dc |
2025-11-08 18:28:22 | 12 | 88 | 56 | 32 | chore: prepare for production deployment |
| 215 | 4958776 |
2025-11-08 18:16:49 | 65 | 6262 | 1885 | 4377 | chore: prepare for production deployment |
| 216 | 50f197a |
2025-11-08 16:23:00 | 18 | 1211 | 290 | 921 | > |
| 217 | 9423815 |
2025-11-08 15:57:28 | 42 | 7314 | 11506 | -4192 | Fix syntax error, missing state, database migration, and FileCopy import |
| 218 | 69d14ea |
2025-11-08 15:25:20 | 49 | 19740 | 1990 | 17750 | > |
| 219 | 0c3bf6b |
2025-11-08 15:04:01 | 2 | 52 | 96 | -44 | Fix topbar layout: add grid/AI icons, center search bar, add settings/theme toggle to desktop |
| 220 | 58fc3e5 |
2025-11-08 14:21:28 | 1 | 2 | 2 | 0 | Update search bar: max-w-lg (512px), flex-1, rounded-lg, px-3 padding |
| 221 | aea9ceb |
2025-11-08 14:21:08 | 1 | 23 | 44 | -21 | Remove navigation arrows from tabs section |
| 222 | c8ac6aa |
2025-11-08 14:20:48 | 1 | 3 | 3 | 0 | Update Compose button styling: blue-600 background, gap-5 spacing, shadow-sm, mr-2 icon spacing |
| 223 | f727797 |
2025-11-08 14:20:31 | 2 | 150 | 109 | 41 | Fix inbox header layout: center search bar, position inbox dropdown to its left, move gear/sun icons to right gutter panel |
| 224 | b4aad24 |
2025-11-08 14:19:19 | 2 | 88 | 88 | 0 | Update color specification with comprehensive details |
| 225 | f67d0f6 |
2025-11-08 14:18:49 | 5 | 614 | 125 | 489 | Add centralized color token system |
| 226 | eda05e4 |
2025-11-08 13:55:53 | 5 | 972 | 35 | 937 | Update inbox colors to match Figma design |
| 227 | 85c574a |
2025-11-08 13:39:37 | 1 | 30 | 27 | 3 | Fix bundlesRef initialization error by moving ref declarations earlier |
| 228 | 4387f67 |
2025-11-08 13:31:55 | 1 | 176 | 3 | 173 | Fix React hooks order violation in ClientPage |
| 229 | e3743fa |
2025-11-08 13:02:56 | 1 | 10 | 98 | -88 | refactor: inbox clean split layout - remove gradients and floating window wrappers |
| 230 | 0108760 |
2025-11-08 12:52:49 | 28 | 3307 | 712 | 2595 | Refactor inbox UI: implement design tokens, grid layout, and selection bar |
| 231 | cc8b1ed |
2025-11-08 10:13:34 | 3 | 54 | 71 | -17 | Polish assistant panel layout |
| 232 | d58da0b |
2025-11-08 10:00:04 | 6 | 468 | 420 | 48 | feat: Implement assistant-style two-panel UI redesign |
| 233 | 46b2aae |
2025-11-08 08:58:51 | 15 | 3841 | 743 | 3098 | > |
End of Report
This report was generated on Fri Nov 14 21:17:21 PST 2025 and contains every commit, every file, and every line change. All data can be verified using the git commands provided above.