flock-core 0.5.10__py3-none-any.whl → 0.5.20__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of flock-core might be problematic. Click here for more details.

Files changed (91) hide show
  1. flock/__init__.py +1 -1
  2. flock/agent/__init__.py +30 -0
  3. flock/agent/builder_helpers.py +192 -0
  4. flock/agent/builder_validator.py +169 -0
  5. flock/agent/component_lifecycle.py +325 -0
  6. flock/agent/context_resolver.py +141 -0
  7. flock/agent/mcp_integration.py +212 -0
  8. flock/agent/output_processor.py +304 -0
  9. flock/api/__init__.py +20 -0
  10. flock/api/models.py +283 -0
  11. flock/{service.py → api/service.py} +121 -63
  12. flock/cli.py +2 -2
  13. flock/components/__init__.py +41 -0
  14. flock/components/agent/__init__.py +22 -0
  15. flock/{components.py → components/agent/base.py} +4 -3
  16. flock/{utility/output_utility_component.py → components/agent/output_utility.py} +12 -7
  17. flock/components/orchestrator/__init__.py +22 -0
  18. flock/{orchestrator_component.py → components/orchestrator/base.py} +5 -293
  19. flock/components/orchestrator/circuit_breaker.py +95 -0
  20. flock/components/orchestrator/collection.py +143 -0
  21. flock/components/orchestrator/deduplication.py +78 -0
  22. flock/core/__init__.py +30 -0
  23. flock/core/agent.py +953 -0
  24. flock/{artifacts.py → core/artifacts.py} +1 -1
  25. flock/{context_provider.py → core/context_provider.py} +3 -3
  26. flock/core/orchestrator.py +1102 -0
  27. flock/{store.py → core/store.py} +99 -454
  28. flock/{subscription.py → core/subscription.py} +1 -1
  29. flock/dashboard/collector.py +5 -5
  30. flock/dashboard/graph_builder.py +7 -7
  31. flock/dashboard/routes/__init__.py +21 -0
  32. flock/dashboard/routes/control.py +327 -0
  33. flock/dashboard/routes/helpers.py +340 -0
  34. flock/dashboard/routes/themes.py +76 -0
  35. flock/dashboard/routes/traces.py +521 -0
  36. flock/dashboard/routes/websocket.py +108 -0
  37. flock/dashboard/service.py +44 -1294
  38. flock/engines/dspy/__init__.py +20 -0
  39. flock/engines/dspy/artifact_materializer.py +216 -0
  40. flock/engines/dspy/signature_builder.py +474 -0
  41. flock/engines/dspy/streaming_executor.py +858 -0
  42. flock/engines/dspy_engine.py +45 -1330
  43. flock/engines/examples/simple_batch_engine.py +2 -2
  44. flock/examples.py +7 -7
  45. flock/logging/logging.py +1 -16
  46. flock/models/__init__.py +10 -0
  47. flock/models/system_artifacts.py +33 -0
  48. flock/orchestrator/__init__.py +45 -0
  49. flock/{artifact_collector.py → orchestrator/artifact_collector.py} +3 -3
  50. flock/orchestrator/artifact_manager.py +168 -0
  51. flock/{batch_accumulator.py → orchestrator/batch_accumulator.py} +2 -2
  52. flock/orchestrator/component_runner.py +389 -0
  53. flock/orchestrator/context_builder.py +167 -0
  54. flock/{correlation_engine.py → orchestrator/correlation_engine.py} +2 -2
  55. flock/orchestrator/event_emitter.py +167 -0
  56. flock/orchestrator/initialization.py +184 -0
  57. flock/orchestrator/lifecycle_manager.py +226 -0
  58. flock/orchestrator/mcp_manager.py +202 -0
  59. flock/orchestrator/scheduler.py +189 -0
  60. flock/orchestrator/server_manager.py +234 -0
  61. flock/orchestrator/tracing.py +147 -0
  62. flock/storage/__init__.py +10 -0
  63. flock/storage/artifact_aggregator.py +158 -0
  64. flock/storage/in_memory/__init__.py +6 -0
  65. flock/storage/in_memory/artifact_filter.py +114 -0
  66. flock/storage/in_memory/history_aggregator.py +115 -0
  67. flock/storage/sqlite/__init__.py +10 -0
  68. flock/storage/sqlite/agent_history_queries.py +154 -0
  69. flock/storage/sqlite/consumption_loader.py +100 -0
  70. flock/storage/sqlite/query_builder.py +112 -0
  71. flock/storage/sqlite/query_params_builder.py +91 -0
  72. flock/storage/sqlite/schema_manager.py +168 -0
  73. flock/storage/sqlite/summary_queries.py +194 -0
  74. flock/utils/__init__.py +14 -0
  75. flock/utils/async_utils.py +67 -0
  76. flock/{runtime.py → utils/runtime.py} +3 -3
  77. flock/utils/time_utils.py +53 -0
  78. flock/utils/type_resolution.py +38 -0
  79. flock/{utilities.py → utils/utilities.py} +2 -2
  80. flock/utils/validation.py +57 -0
  81. flock/utils/visibility.py +79 -0
  82. flock/utils/visibility_utils.py +134 -0
  83. {flock_core-0.5.10.dist-info → flock_core-0.5.20.dist-info}/METADATA +69 -61
  84. {flock_core-0.5.10.dist-info → flock_core-0.5.20.dist-info}/RECORD +89 -31
  85. flock/agent.py +0 -1578
  86. flock/orchestrator.py +0 -1746
  87. /flock/{visibility.py → core/visibility.py} +0 -0
  88. /flock/{helper → utils}/cli_helper.py +0 -0
  89. {flock_core-0.5.10.dist-info → flock_core-0.5.20.dist-info}/WHEEL +0 -0
  90. {flock_core-0.5.10.dist-info → flock_core-0.5.20.dist-info}/entry_points.txt +0 -0
  91. {flock_core-0.5.10.dist-info → flock_core-0.5.20.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flock-core
3
- Version: 0.5.10
3
+ Version: 0.5.20
4
4
  Summary: Flock: A declrative framework for building and orchestrating AI agents.
5
5
  Author-email: Andre Ratzenberger <andre.ratzenberger@whiteduck.de>
6
6
  License: MIT
@@ -62,6 +62,10 @@ Flock is a production-focused framework for orchestrating AI agents through **de
62
62
  - **[User Guides](https://whiteducksoftware.github.io/flock/guides/)** - In-depth feature documentation
63
63
  - **[API Reference](https://whiteducksoftware.github.io/flock/reference/api/)** - Complete API documentation
64
64
  - **[Roadmap](https://whiteducksoftware.github.io/flock/about/roadmap/)** - What's coming in v1.0
65
+ - **Architecture & Patterns:**
66
+ - [Architecture Overview](docs/architecture.md) - System design and module organization
67
+ - [Error Handling Patterns](docs/patterns/error_handling.md) - Production error handling guide
68
+ - [Async Patterns](docs/patterns/async_patterns.md) - Async/await best practices
65
69
 
66
70
  ---
67
71
 
@@ -287,63 +291,6 @@ asyncio.run(main())
287
291
 
288
292
  ---
289
293
 
290
- ## Context Provider Primer (Security + Cost)
291
-
292
- Context Providers are the security and efficiency layer between agents and the blackboard. They decide what each agent sees in its historical context and always enforce visibility rules.
293
-
294
- Why use them
295
- - Enforce access control (visibility is applied before engines see data)
296
- - Cut context size (often 90%+) by filtering to what matters
297
- - Specialize per agent or set a global default
298
-
299
- Copy/paste examples
300
- ```python
301
- from flock import Flock
302
- from flock.context_provider import FilteredContextProvider
303
- from flock.store import FilterConfig
304
-
305
- # Global: show only urgent items (limit context size)
306
- flock = Flock(
307
- "openai/gpt-4.1",
308
- context_provider=FilteredContextProvider(FilterConfig(tags={"urgent"}), limit=50)
309
- )
310
-
311
- # Per-agent: override global for a specific role
312
- senior = flock.agent("senior").consumes(LogEntry).publishes(Analysis)
313
- senior.context_provider = FilteredContextProvider(
314
- FilterConfig(tags={"ERROR", "WARN"}),
315
- limit=200
316
- )
317
- ```
318
-
319
- Learn more: docs/guides/context-providers.md
320
-
321
- ---
322
-
323
- ## Persistent Blackboard History
324
-
325
- The in-memory store is still great for local tinkering, but production teams now have a durable option. Plugging in `SQLiteBlackboardStore` turns the blackboard into a persistent event log with first-class ergonomics:
326
-
327
- - **Long-lived artifacts** — every field (payload, tags, partition keys, visibility) is stored for replay, audits, and postmortems
328
- - **Historical APIs** — `/api/v1/artifacts`, `/summary`, and `/agents/{agent_id}/history-summary` expose pagination, filtering, and consumption counts
329
- - **Dashboard module** — the new **Historical Blackboard** experience preloads persisted history, enriches the graph with consumer metadata, and highlights retention windows
330
- - **Operational tooling** — CLI helpers (`init-sqlite-store`, `sqlite-maintenance --delete-before ... --vacuum`) make schema setup and retention policies scriptable
331
-
332
- Quick start:
333
-
334
- ```python
335
- from flock import Flock
336
- from flock.store import SQLiteBlackboardStore
337
-
338
- store = SQLiteBlackboardStore(".flock/blackboard.db")
339
- await store.ensure_schema()
340
- flock = Flock("openai/gpt-4.1", store=store)
341
- ```
342
-
343
- Run `examples/02-the-blackboard/01_persistent_pizza.py` to generate history, then launch `examples/03-the-dashboard/04_persistent_pizza_dashboard.py` and explore previous runs, consumption trails, and retention banners inside the dashboard.
344
-
345
- ---
346
-
347
294
  ## Core Concepts
348
295
 
349
296
  ### Typed Artifacts (The Vocabulary)
@@ -673,6 +620,28 @@ agent.context_provider = FilteredContextProvider(
673
620
 
674
621
  **📖 [Learn more: Context Providers Guide](https://whiteducksoftware.github.io/flock/guides/context-providers/) | [Steal production code →](examples/08-context-provider/)**
675
622
 
623
+ ### Persistent Blackboard History
624
+
625
+ The in-memory store is great for local development, but production teams need durability. The `SQLiteBlackboardStore` turns the blackboard into a persistent event log with first-class ergonomics:
626
+
627
+ **What you get:**
628
+ - **Long-lived artifacts** — Every field (payload, tags, partition keys, visibility) stored for replay, audits, and postmortems
629
+ - **Historical APIs** — `/api/v1/artifacts`, `/summary`, and `/agents/{agent_id}/history-summary` expose pagination, filtering, and consumption counts
630
+ - **Dashboard integration** — The **Historical Blackboard** view preloads persisted history, enriches the graph with consumer metadata, and highlights retention windows
631
+ - **Operational tooling** — CLI helpers (`init-sqlite-store`, `sqlite-maintenance --delete-before ... --vacuum`) make schema setup and retention policies scriptable
632
+
633
+ **Quick start:**
634
+ ```python
635
+ from flock import Flock
636
+ from flock.store import SQLiteBlackboardStore
637
+
638
+ store = SQLiteBlackboardStore(".flock/blackboard.db")
639
+ await store.ensure_schema()
640
+ flock = Flock("openai/gpt-4.1", store=store)
641
+ ```
642
+
643
+ **Try it:** Run `examples/02-the-blackboard/01_persistent_pizza.py` to generate history, then launch `examples/03-the-dashboard/04_persistent_pizza_dashboard.py` to explore previous runs, consumption trails, and retention banners.
644
+
676
645
  ### Batching Pattern: Parallel Execution Control
677
646
 
678
647
  **A key differentiator:** The separation of `publish()` and `run_until_idle()` enables parallel execution.
@@ -723,7 +692,7 @@ class LoggingComponent(AgentComponent):
723
692
  async def on_pre_evaluate(self, agent, ctx, inputs):
724
693
  logger.info(f"Agent {agent.name} evaluating: {inputs}")
725
694
  return inputs # Pass through unchanged
726
-
695
+
727
696
  async def on_post_evaluate(self, agent, ctx, inputs, result):
728
697
  logger.info(f"Agent {agent.name} produced: {result}")
729
698
  return result
@@ -765,7 +734,7 @@ flock = Flock("openai/gpt-4.1")
765
734
  flock.add_component(MaintenanceWindowComponent())
766
735
  ```
767
736
 
768
- **Built-in components**:
737
+ **Built-in components**:
769
738
  - `CircuitBreakerComponent` - Prevent runaway agent execution
770
739
  - `DeduplicationComponent` - Skip duplicate artifact/agent processing
771
740
 
@@ -800,6 +769,35 @@ agent.best_of(150, ...) # ⚠️ Warns: "best_of(150) is very high - high LLM c
800
769
 
801
770
  ## Production-Ready Observability
802
771
 
772
+ ### Sophisticated REST API
773
+
774
+ **Production-ready HTTP endpoints with comprehensive OpenAPI documentation:**
775
+
776
+ Flock includes a fully-featured REST API for programmatic access to the blackboard, agents, and workflow orchestration. Perfect for integration with external systems, building custom UIs, or monitoring production deployments.
777
+
778
+ **Key endpoints:**
779
+ - `POST /api/v1/artifacts` - Publish artifacts to the blackboard
780
+ - `GET /api/v1/artifacts` - Query artifacts with filtering, pagination, and consumption metadata
781
+ - `POST /api/v1/agents/{name}/run` - Direct agent invocation
782
+ - `GET /api/v1/correlations/{correlation_id}/status` - Workflow completion tracking
783
+ - `GET /api/v1/agents` - List all registered agents with subscriptions
784
+ - `GET /health` and `GET /metrics` - Production monitoring
785
+
786
+ **Start the API server:**
787
+ ```python
788
+ await flock.serve(dashboard=True) # API + Dashboard on port 8344
789
+ # API docs: http://localhost:8344/docs
790
+ ```
791
+
792
+ **Features:**
793
+ - ✅ **OpenAPI 3.0** - Interactive documentation at `/docs`
794
+ - ✅ **Pydantic validation** - Type-safe request/response models
795
+ - ✅ **Correlation tracking** - Monitor workflow completion with polling
796
+ - ✅ **Consumption metadata** - Full artifact lineage and agent execution trails
797
+ - ✅ **Production monitoring** - Health checks and Prometheus-compatible metrics
798
+
799
+ **📖 [Explore the API →](http://localhost:8344/docs)** (start the server first!)
800
+
803
801
  ### Real-Time Dashboard
804
802
 
805
803
  **Start the dashboard with one line:**
@@ -1241,12 +1239,22 @@ uv run python examples/02-dashboard/01_declarative_pizza.py
1241
1239
  - 📖 [Documentation](https://whiteducksoftware.github.io/flock) - Complete online documentation
1242
1240
  - 📘 [AGENTS.md](AGENTS.md) - Development guide
1243
1241
 
1242
+ **Architecture & Patterns:**
1243
+ - 📐 [Architecture Overview](docs/architecture.md) - Understand the refactored codebase structure
1244
+ - 🔧 [Error Handling](docs/patterns/error_handling.md) - Production-ready error patterns
1245
+ - ⚡ [Async Patterns](docs/patterns/async_patterns.md) - Async/await best practices
1246
+
1244
1247
  ---
1245
1248
 
1246
1249
  ## Contributing
1247
1250
 
1248
1251
  We're building Flock in the open. See **[Contributing Guide](https://whiteducksoftware.github.io/flock/about/contributing/)** for development setup, or check [CONTRIBUTING.md](CONTRIBUTING.md) and [AGENTS.md](AGENTS.md) locally.
1249
1252
 
1253
+ **Before contributing, familiarize yourself with:**
1254
+ - [Architecture Overview](docs/architecture.md) - Codebase organization (Phase 1-7 refactoring)
1255
+ - [Error Handling](docs/patterns/error_handling.md) - Required error patterns
1256
+ - [Async Patterns](docs/patterns/async_patterns.md) - Async/await standards
1257
+
1250
1258
  **We welcome:**
1251
1259
  - Bug reports and feature requests
1252
1260
  - Documentation improvements
@@ -1314,6 +1322,6 @@ We're calling this 0.5 to signal:
1314
1322
 
1315
1323
  ---
1316
1324
 
1317
- **Last Updated:** October 13, 2025
1325
+ **Last Updated:** October 19, 2025
1318
1326
  **Version:** Flock 0.5.0 (Blackboard Edition)
1319
1327
  **Status:** Production-Ready Core, Enterprise Features Roadmapped
@@ -1,39 +1,61 @@
1
- flock/__init__.py,sha256=fvp4ltfaAGmYliShuTY_XVIpOUN6bMXbWiBnwb1NBoM,310
2
- flock/agent.py,sha256=luggPsY2pAnjt4TQ-S-ez1us5R2qk6UC-12ccjP6cMk,62607
3
- flock/artifact_collector.py,sha256=j9p0qvu9IrmMTvOwdX3PGhEnj1-A3uMx0bMfG9zBdgo,6410
4
- flock/artifacts.py,sha256=QIUlol5hzUZO_8SINCqsN_Xr8fHixsc01QbFV_WIIj0,2527
5
- flock/batch_accumulator.py,sha256=4ZZLERkpH0XzN87-z2b5Tyjubheo_yCxoXz4lsjxUuk,8017
6
- flock/cli.py,sha256=lSx9qvK0AzfnGPjbMh2Jdsr8TlDA44huxUg_8tdlH_c,4564
7
- flock/components.py,sha256=SpqFmYBLNIGkKkVrfGpi-9eFj7jKA0N8VJHL-HiyzRc,8092
8
- flock/context_provider.py,sha256=Le01ZilMobaaPqZVJiBGFWkv1XnN3K6CtnPVD5Ewphk,20245
9
- flock/correlation_engine.py,sha256=pFD1y13bSMZ9HpUpp6RHWr5vb39gd0mf-rRQIFI0R5Q,8055
10
- flock/examples.py,sha256=z83GXjtroxRKplt57ur3v8UJFwf9cCHtZ3gj7QHiigs,3688
11
- flock/orchestrator.py,sha256=g9Vv0Dhd1Ls_Nm_MiTFL7si4LH14owzTiM6fccX9umA,68645
12
- flock/orchestrator_component.py,sha256=lBn8WXiLzw3MXcU5JrNC3uH2SruLBCj8bSnSzH9txes,25210
1
+ flock/__init__.py,sha256=RF9yUAbCXr2H2SYqWt46GT33B-nsyVdhDBodUkYF-RU,302
2
+ flock/cli.py,sha256=axEX-UPk5l6lTOwaTpUUsIvjAGSdBcGRgONWZyInIAw,4573
3
+ flock/examples.py,sha256=erw3awf5TyyYZZLl62nf8i77qwmzIZjK-qBaI0ioyFs,3707
13
4
  flock/registry.py,sha256=eCSK1yOgcY53vzaNFG4qnlLP3H9R4NWi9fTq_WUNjus,4846
14
- flock/runtime.py,sha256=DCClW_53ped_M0uMravPXmEGgVn_tOsyynNVYjZyM3c,10771
15
- flock/service.py,sha256=lwOIlm-nSOHDnjvWFKL7vrAmk6MdGmSJVAihK0wcia4,11287
16
- flock/store.py,sha256=hvecQqmx1xov7FyRCTwnyFJTpGb_7LHrHHQhGRWRUIE,46029
17
- flock/subscription.py,sha256=2_0jCxOlk-G1jsD6tiVILmKdmx-Wm1qGYzCZVbz_ktg,5424
18
- flock/utilities.py,sha256=PNIIBrtvwAkW6cI_OxF2dPS151ZjDNbFOaCfsul2BpE,12473
19
- flock/visibility.py,sha256=uwscg32t6Dp9LuA_EVDT5-_1lotzZWWS9Dl1foyJDxo,2926
5
+ flock/agent/__init__.py,sha256=Fojf07SWgk6GsHaNouKpGQVHf5lH6q8LaWeDUEcI5lI,923
6
+ flock/agent/builder_helpers.py,sha256=S3mPi3-cLZAB061kAKbOyHn2iptIOg74fVoSCrUOKG0,5952
7
+ flock/agent/builder_validator.py,sha256=qQBoWStXKVQysqa1ysCYy2M89AbIfHPQ_ooACKDqbIM,5888
8
+ flock/agent/component_lifecycle.py,sha256=ODZblOFqhEi3dSg-lVFeov-6ya8b4fPkWBi1QSaKMVI,11358
9
+ flock/agent/context_resolver.py,sha256=0m8kCwBv9MDkeq7uvigT6cXI2FnRRk7tErWMz1fAP-0,4804
10
+ flock/agent/mcp_integration.py,sha256=4krvKjtnZH0xegaacrPOnJxVuCXgpYcVe9-OlNvzryc,7817
11
+ flock/agent/output_processor.py,sha256=9YT5q1sJbmqzxrzusiqzrfnIoxrVO3lN1OrHhO18dZA,12441
12
+ flock/api/__init__.py,sha256=r5jHaA_onLMIQCRsSULxQ1eMLxDeTSI77t14_nNsebI,486
13
+ flock/api/models.py,sha256=oZE063FJSRpHRyiNqG6pLld5EIst-wjdn3O-z9nzZSo,9484
14
+ flock/api/service.py,sha256=Ut2qnm16ZRJu0iP0osEJH7VehIfcL6IGzGNq3HaCaew,13338
20
15
  flock/api/themes.py,sha256=7L-Bxhh8N1FXYsyTy7B_n8mSCGl_wDZXrvyY2llkF-A,1938
16
+ flock/components/__init__.py,sha256=fMpjmfsW1eaD7nImyYFqHuJtO-dWSLQxoBQU9Ish6q8,965
17
+ flock/components/agent/__init__.py,sha256=pT098n8PNOkkLjmKZ0Lvtbf7W0xEGm4w1aemAIW8reQ,479
18
+ flock/components/agent/base.py,sha256=FDDTquqdlROFyOjQtXxJHEN95BVOWI79bDF4deFXE68,8144
19
+ flock/components/agent/output_utility.py,sha256=BGlar7EaVjAenboCNOln3IpTTHDJQSnDNXGH0XbjILU,9314
20
+ flock/components/orchestrator/__init__.py,sha256=pdUgs_JSPu058yZ5orCOHMaulS8-17HYhsjmBf1Omwc,697
21
+ flock/components/orchestrator/base.py,sha256=ZL1d3xDdrRsG5cSJCN_GPB8sv2FaqNyo28nknzIcZvQ,14693
22
+ flock/components/orchestrator/circuit_breaker.py,sha256=SH4pNFpe7MnkIRuK5TmRFBBOukp-Xc_BoyuhB5NNNSo,3249
23
+ flock/components/orchestrator/collection.py,sha256=oTXDqNZgliwVqZO8e49mX3yEWxflzeZdD7UnbcHWypk,5572
24
+ flock/components/orchestrator/deduplication.py,sha256=w4fwg3nLmb2TXPSSN3GEq5XPwviEEmmwu3fceSejBXw,2464
25
+ flock/core/__init__.py,sha256=pEE4dbPtSEIC1WQYK8USWbF0EmZhccTfDO7eh7lzD-s,574
26
+ flock/core/agent.py,sha256=mljIoTble2T7fQfT43-DRVPlkrplhOGaKPOLwl_Ge4I,36081
27
+ flock/core/artifacts.py,sha256=dHDjn3DgS0Yo62oFoafQcdYNtqFrqLCzkvUytwm5VGU,2532
28
+ flock/core/context_provider.py,sha256=1RG4lYhDNTshAQA1PwZELtUF2UDdC5NZWcBlE4BKDtc,20260
29
+ flock/core/orchestrator.py,sha256=aoPh1k-vt_JWotXKcJ-I2j25NzLoS5inZPqiMNj4q-I,42276
30
+ flock/core/store.py,sha256=4Zyh73RjjiUTtYTYiZ1pajWVXWKIew0dFERTNgQxRAA,31964
31
+ flock/core/subscription.py,sha256=jIxoET1hvIcRGeLOKfPfLAH0IJvVAUc5_ZZYWPCIjr0,5429
32
+ flock/core/visibility.py,sha256=uwscg32t6Dp9LuA_EVDT5-_1lotzZWWS9Dl1foyJDxo,2926
21
33
  flock/dashboard/__init__.py,sha256=_W6Id_Zb7mkSz0iHY1nfdUqF9p9uV_NyHsU7PFsRnFI,813
22
- flock/dashboard/collector.py,sha256=zMDv1OYWrDz5obNVMrc7uLImUH5yWIYCaMB0h-Uu2kY,21822
34
+ flock/dashboard/collector.py,sha256=TiMfp7i0lIJx4HTBKUwSj_vf5feNLyincge03mlWf2o,21843
23
35
  flock/dashboard/events.py,sha256=ptKNaeHcgYnIO8rBTEK56ZC5w-dUWakXhNzDep1XaL4,7653
24
- flock/dashboard/graph_builder.py,sha256=jdiaruce5uRybndlA4aiOXW-gKkHeGtnndzYQ1WyU9Y,32006
36
+ flock/dashboard/graph_builder.py,sha256=EJiebAmbD2s66l7B8QxExN710zvO3lq_RwkvxoDwdlo,32036
25
37
  flock/dashboard/launcher.py,sha256=qnl1sFm9g2dAyzhyLPrfqAfld63G9aTNRHchgNuGnoo,8218
26
- flock/dashboard/service.py,sha256=iEhI9W7Z1Z9UHq9DLjAzvDmgaWUr0qac2FPJiu9IcDI,53607
38
+ flock/dashboard/service.py,sha256=bLusnlQ2LzPy_OZlq6DpEEAn6Ru3Rwg8IXO31YA5lB0,5770
27
39
  flock/dashboard/websocket.py,sha256=qv2cbX9DBhglYgGGPFsD9ryehkBsIcJQGg7tJTIDyMM,9689
28
40
  flock/dashboard/models/__init__.py,sha256=T4Yz8IXMm7lBqa2HLDSv7WJBtaKcdZIlTrz6GHNFZxs,68
29
41
  flock/dashboard/models/graph.py,sha256=mQBzaogaOV1sss4aI3yNK8Kg4SdztPwIu3VQfrB3zLU,5444
42
+ flock/dashboard/routes/__init__.py,sha256=qNg67xqrINSb47EAgmX-S58UCLbg6IGsNZkU6MYM0SY,748
43
+ flock/dashboard/routes/control.py,sha256=kKdbSVj0sKSIFpkEUUnvwpbRjH_4SkRLKuUBJH0b7BU,11546
44
+ flock/dashboard/routes/helpers.py,sha256=bAYrLQE6VNNvTWANnSnEljknPcgmzRLxkxoRMV0zeMk,12238
45
+ flock/dashboard/routes/themes.py,sha256=LJeTAvVY4q1rUGAZWdAy4MRPp0RAtIbsuUZZKFMpyxE,2294
46
+ flock/dashboard/routes/traces.py,sha256=3JzerJmLESFaEQqdonshwafV7xhsmh_7XD-q_3lfwkc,18594
47
+ flock/dashboard/routes/websocket.py,sha256=f7aU9WeWtc4HJzmyw_GGLDO3p71hJp4nbVpg4j7Yzek,3993
30
48
  flock/dashboard/static_v2/index.html,sha256=0KNfWwmpr0JmVNbalnsaQta0y3XlVhOQ_HSts2LuU3A,423
31
49
  flock/dashboard/static_v2/assets/index-DFRnI_mt.js,sha256=qeezaWLISr_EKNBBh8v0jzspd2KRcz8jW1r0p7z0Ht0,764860
32
50
  flock/dashboard/static_v2/assets/index-fPLNdmp1.css,sha256=skpvfkkrlw7WbmBh7HN-rUKAtKP-gpuLUH4klUgFHT4,74529
33
51
  flock/engines/__init__.py,sha256=waNyObJ8PKCLFZL3WUFynxSK-V47m559P3Px-vl_OSc,124
34
- flock/engines/dspy_engine.py,sha256=b3PkeyBzcKI1ijR3ojR4FOisdKrxE_hxZhF5WhxKDmQ,75000
52
+ flock/engines/dspy_engine.py,sha256=tIdNCsQjyzWnTRzQBVLyfY4xP0FKoXHEfV4_4ch_xTQ,20058
53
+ flock/engines/dspy/__init__.py,sha256=ONqJyNfaZaqBno4ggDq092lquZ8KjbloRO9zTZISjoA,734
54
+ flock/engines/dspy/artifact_materializer.py,sha256=ZxcW2eUVt0PknM_qB4tbH4U5SiOrGWiku08joiqygVg,8001
55
+ flock/engines/dspy/signature_builder.py,sha256=4o2zNDCouUxAJOHoONolflnWu5WGrsKSvHuc5Dzetjk,17790
56
+ flock/engines/dspy/streaming_executor.py,sha256=M6Xh-oAE2wkrH5rDsDVUqJ2WIZ96gjhnBX9w4zUyYbg,37789
35
57
  flock/engines/examples/__init__.py,sha256=cDAjF8_NPL7nhpwa_xxgnPYRAXZWppKE2HkxmL8LGAI,126
36
- flock/engines/examples/simple_batch_engine.py,sha256=0zQozoiNFq_UcBU5plAqg1VjtP6g6eib7VKATEjnRf8,2902
58
+ flock/engines/examples/simple_batch_engine.py,sha256=p_4YkQ6PI1q09calMxDDRYOdB8naMxklKEzWPMQyrVE,2914
37
59
  flock/frontend/README.md,sha256=0dEzu4UxacGfSstz9_R0KSeFWJ1vNRi0p-KLIay_TfU,26212
38
60
  flock/frontend/index.html,sha256=BFg1VR_YVAJ_MGN16xa7sT6wTGwtFYUhfJhGuKv89VM,312
39
61
  flock/frontend/package-lock.json,sha256=vNOaISeq3EfEDDEsFYPWFaMsqypDgQIE0P_u6tzE0g4,150798
@@ -157,10 +179,9 @@ flock/frontend/src/types/theme.ts,sha256=bjV2zWxBJilEXeosjSSirw05dL7zICShUDx2H0o
157
179
  flock/frontend/src/utils/artifacts.ts,sha256=JjbNXKgcBaUJdR7VKDi0LK0T3d-ltYt4HHbiQNB3rmI,790
158
180
  flock/frontend/src/utils/mockData.ts,sha256=XysjTPAcq6P7BXD8yHv-zJ5vNsxG1T5TLJjX4phOU_w,2316
159
181
  flock/frontend/src/utils/performance.ts,sha256=ZcZjR8DKwF2ixveng2tKIRiW8wZ-ee_RPZFfi1jm4Zo,507
160
- flock/helper/cli_helper.py,sha256=IfhD0CZzRnhsyLzjzWEZBAFqLIHIFeedYTwW48KfnmM,50476
161
182
  flock/logging/__init__.py,sha256=RyR9jTC0q02Fh0L8easQfki2uCOSTii5MPhrxcqQNsg,163
162
183
  flock/logging/auto_trace.py,sha256=iNx4LZsXjykOQOubBoGpOhldJQeRO94rarS9bFjZ_pM,5562
163
- flock/logging/logging.py,sha256=Jdei9EYMX_4mSQmJu5plETVaqQ8BBu211DAkmqKhRhk,20270
184
+ flock/logging/logging.py,sha256=T1TCNWXnKAnN8E1v6O3Lbh8XBrZhzCJZjo-hs6_FYmI,19726
164
185
  flock/logging/telemetry.py,sha256=KWkqB-aMuD7gv2ABMwRjiiJ_DwDtPcOraLWJCB4jRXI,8324
165
186
  flock/logging/trace_and_logged.py,sha256=uVOFU0iyl0LzrCi3dWjDHTwastCFN2WTMAtaUJeFYn4,11504
166
187
  flock/logging/formatters/enum_builder.py,sha256=y8SjIHPs7ajT9QHR6wjjBmmL7ZrxFzegaBTb5ApOHvY,975
@@ -192,8 +213,36 @@ flock/mcp/types/handlers.py,sha256=MaUNpjfLFi7sozoj-nQDUOCLeoaFD8tdos6XkjBUCzI,7
192
213
  flock/mcp/types/types.py,sha256=EG2YuDlFCHzE4k4XIMur9QPn_6i7N621s90OXeAVRfc,11511
193
214
  flock/mcp/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
194
215
  flock/mcp/util/helpers.py,sha256=jO8DqqSb_S4dyvsxv5vlMGRoMx92Su_5-Uv17gQNuLU,740
216
+ flock/models/__init__.py,sha256=724PD_4bRX0rFdBDXzP0Pwr-OUntq0LIH48bMmtfcM0,266
217
+ flock/models/system_artifacts.py,sha256=f4O-gErJRy5aMFVDh6ZGcj_5Gr130WnG28m5AfhnbxU,1083
218
+ flock/orchestrator/__init__.py,sha256=u4DDXcwCSGrpHYbkdA4eP4W9Uj9vNMF6qxxUtygwmEU,1728
219
+ flock/orchestrator/artifact_collector.py,sha256=XUB4dmx2tzq0p2CkYfP4NowfBkryp3DNA9jb7PWEIDk,6419
220
+ flock/orchestrator/artifact_manager.py,sha256=fXqyU1pRDLf7MRxK86CMHr7uDOeeom_PEZ-3pVZxTj0,5775
221
+ flock/orchestrator/batch_accumulator.py,sha256=WbIQqQz03LRLPe9yJsf_6TgppofE2tN_7f60P38n2S8,8027
222
+ flock/orchestrator/component_runner.py,sha256=pf068DRGw4unh4K09Y8gt-OLM3FLm6CHQQ3d13jzkmM,14266
223
+ flock/orchestrator/context_builder.py,sha256=Wp7_lzu_F7y-be6uiplur0VGauuP58NSmu1foXFfZc0,6244
224
+ flock/orchestrator/correlation_engine.py,sha256=oVeV8EQpjc0Bt7YVzyUQXlEelOre8hQPUH3Dmh87lyE,8065
225
+ flock/orchestrator/event_emitter.py,sha256=2wWrM_mZ2MwFLVo6FYfp9PrHrfOkzUp96C6U5HnCZAE,6632
226
+ flock/orchestrator/initialization.py,sha256=jjbfGhdxPW6L4o59mwXCXskIPFR_UlTIKvcHMyIhNbE,6349
227
+ flock/orchestrator/lifecycle_manager.py,sha256=mANaJhJ96p_bwDfSn6ieBShAUfantXDyWyDyR6pJ3ZM,9270
228
+ flock/orchestrator/mcp_manager.py,sha256=24nfmf729PjTyQG06UyymRHTp9Zu-qbqFCW6FmeVDuo,7081
229
+ flock/orchestrator/scheduler.py,sha256=SG8BSb00MfYdpbAmBumiP_45UEmSoZLbN2z_LyoM1ko,6368
230
+ flock/orchestrator/server_manager.py,sha256=u_ZD50Yqw-zyxM3PMJexGAQxETpWZrV6aiAixDiC_Lk,8935
231
+ flock/orchestrator/tracing.py,sha256=luL5I5ch98C5riGc5e9xrHl-iE-IwuIAVpDBdNQZ27Y,5099
195
232
  flock/patches/__init__.py,sha256=KfRTpO_rz547iKxJDknymar1P3lS_8AhDh-sR1BkcZ0,194
196
233
  flock/patches/dspy_streaming_patch.py,sha256=OQeLYWmL-7rqudphMwERnpvXhXamnvYn3xNcySajacY,2879
234
+ flock/storage/__init__.py,sha256=9-p-RTpxGJOksfDavbpUsTghSIjDGtWCEC3bpVuYZY0,249
235
+ flock/storage/artifact_aggregator.py,sha256=wMpoXjko9UmfMmQ_qUTzSX-nhb0k8BVRlzRLHlkKEug,5176
236
+ flock/storage/in_memory/__init__.py,sha256=XPYxGNnpDjiv_L1tj8AxfORA_xHP16FV8t5UqrhtFLk,138
237
+ flock/storage/in_memory/artifact_filter.py,sha256=22TQdXdhPHUmpQTBsiIiPE016XaSZlC9Gx_KxqK7Gog,3902
238
+ flock/storage/in_memory/history_aggregator.py,sha256=0zJA6w0bOn0cblfYq19WMR5keUFJ2hXhLzB82MZThzE,3603
239
+ flock/storage/sqlite/__init__.py,sha256=khUvf8X9k9qnJjV_UFltkeoGp7qs9M6vGWCsuyGxfZw,245
240
+ flock/storage/sqlite/agent_history_queries.py,sha256=pXabVwqZrGUBgO_k8mqr7PKuJ2LzfOFHGddSCtuSM4U,5061
241
+ flock/storage/sqlite/consumption_loader.py,sha256=31eyFXXl7igN4ijxIh-uvuGD9DUjrjAQYYczHhG-TXk,3047
242
+ flock/storage/sqlite/query_builder.py,sha256=QjRS35CKT-90ORnwEA7X1SCO65wySVZC1kYpKPXzNns,4065
243
+ flock/storage/sqlite/query_params_builder.py,sha256=Tjq0aGIEwhvNtlAKx3tWhASzEAo48Xiiro72c9CZaX8,2781
244
+ flock/storage/sqlite/schema_manager.py,sha256=F-zDks90V3xwGAuvF3cj3I4xkkgYvJLCC_8QVZ_iPnE,4915
245
+ flock/storage/sqlite/summary_queries.py,sha256=U7rsgWoPRVXcGbS7bN0SQ_r2vERgazjbCZ4nupVQtxM,5940
197
246
  flock/themes/3024-day.toml,sha256=uOVHqEzSyHx0WlUk3D0lne4RBsNBAPCTy3C58yU7kEY,667
198
247
  flock/themes/3024-night.toml,sha256=qsXUwd6ZYz6J-R129_Ao2TKlvvK60svhZJJjB5c8Tfo,1667
199
248
  flock/themes/aardvark-blue.toml,sha256=5ZgsxP3pWLPN3yJ2Wd9ErCo7fy_VJpIfje4kriDKlqo,1667
@@ -530,9 +579,18 @@ flock/themes/zenburn.toml,sha256=NxOAR3cx-Z9PVErEKHFZ6jsjfKBtPmfyN_vGSri5_qo,171
530
579
  flock/themes/zenburned.toml,sha256=UEmquBbcAO3Zj652XKUwCsNoC2iQSlIh-q5c6DH-7Kc,1664
531
580
  flock/themes/zenwritten-dark.toml,sha256=-dgaUfg1iCr5Dv4UEeHv_cN4GrPUCWAiHSxWK20X1kI,1663
532
581
  flock/themes/zenwritten-light.toml,sha256=G1iEheCPfBNsMTGaVpEVpDzYBHA_T-MV27rolUYolmE,1666
533
- flock/utility/output_utility_component.py,sha256=YXzVy4EZXTrz0o6DjlE6tna4N79T5S5b98qDS42KqXM,9316
534
- flock_core-0.5.10.dist-info/METADATA,sha256=STc1MF57LI48929-B1uzmvLQACqRnTQLtpz-4iXgybQ,50917
535
- flock_core-0.5.10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
536
- flock_core-0.5.10.dist-info/entry_points.txt,sha256=UQdPmtHd97gSA_IdLt9MOd-1rrf_WO-qsQeIiHWVrp4,42
537
- flock_core-0.5.10.dist-info/licenses/LICENSE,sha256=U3IZuTbC0yLj7huwJdldLBipSOHF4cPf6cUOodFiaBE,1072
538
- flock_core-0.5.10.dist-info/RECORD,,
582
+ flock/utils/__init__.py,sha256=0EPfSUqxPEcgMVl02acwO4rdUsePZSTahxXd1DA4ygo,442
583
+ flock/utils/async_utils.py,sha256=CzVXWXPCK-IP-defXCZ5fsDZaLhRiz2l67_FtMN-TAo,1963
584
+ flock/utils/cli_helper.py,sha256=IfhD0CZzRnhsyLzjzWEZBAFqLIHIFeedYTwW48KfnmM,50476
585
+ flock/utils/runtime.py,sha256=XEIXIXP2jcJsE7I-taI2PVxrUo-EHsxIupYeBt5YFHg,10786
586
+ flock/utils/time_utils.py,sha256=LWRLnJ8kVHmsKcC0FWi4RqWynnKr9B2zXhc6BH7e8OM,1405
587
+ flock/utils/type_resolution.py,sha256=oVIX6r4QencA4faV7JfASMvKrAprjLcpKJnhlsBeZhE,1114
588
+ flock/utils/utilities.py,sha256=E3EQDo5SLU4XeoL3-PCc4lOatJHFEkMHKbZhnGhdMG4,12485
589
+ flock/utils/validation.py,sha256=Vqzd8Qi73ttJNSHdr8EUEonyfzAYWVfEyW0fhLs1bA4,1847
590
+ flock/utils/visibility.py,sha256=riJfHFWH8R2vk3DU7PYNi2LMaE8cy8pnMvxxiqWq-4I,2349
591
+ flock/utils/visibility_utils.py,sha256=eGA28aL8FnGyGzsbVNvqI1UoPauu1Jedl5LUZ5oWZZ0,3874
592
+ flock_core-0.5.20.dist-info/METADATA,sha256=rS632wf-RqNGOiUevmP4UXSHoFF_5OOBz7CUxAVE4lM,52158
593
+ flock_core-0.5.20.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
594
+ flock_core-0.5.20.dist-info/entry_points.txt,sha256=UQdPmtHd97gSA_IdLt9MOd-1rrf_WO-qsQeIiHWVrp4,42
595
+ flock_core-0.5.20.dist-info/licenses/LICENSE,sha256=U3IZuTbC0yLj7huwJdldLBipSOHF4cPf6cUOodFiaBE,1072
596
+ flock_core-0.5.20.dist-info/RECORD,,