The rules engine.
The rules engine: the 16 calls this system serves, each a route of the API and a tool of the MCP server, at contract 0476e35e6e275db5.
Figure 1The rules enginespecified
The rules engine
The 16 calls below are the whole of this system on the wire: each is one route of the API and one tool of the MCP server, with one typed input, one card as its answer and one refusal shape. Every answer carries its foot: what was read, the population and the control.
The calls#
| tool | route | takes | gives |
|---|---|---|---|
| si.ask.preview | POST /v1/ask/preview | a predicate or its hash, the place, the window, the speeds wanted, and the caller with the surface it calls from | the typed answer of section 2.3, as it fills |
| si.ask.saved_view | POST /v1/ask/saved_view | the view. Or the view and a caller | the definition. Or its rows, with when they were built |
| si.read.attributes | POST /v1/read/attributes | a population and, where wanted, a window | the attributes its units carry, each with its plain name, the units that carry it, the value type read and up to three examples, most carried first, with the units read and in, and the partial answer when the budget ran out |
| si.read.basket | POST /v1/read/basket | the basket, and one subject, a set of subjects, a scope predicate or a cut into groups, with the window | the basket reading as a fact: memberships with their scale of association and likelihood for one subject; population readings and co-membership for a set; proxy against group with lift and control for groups |
| si.read.explain_catch | POST /v1/read/explain_catch | the match | the conditions that admitted it, the words each matched, the observation, and the source |
| si.read.monitor_strength | POST /v1/read/monitor_strength | the monitor and a window | the four numbers, each with its population |
| si.read.predicate_language | POST /v1/read/predicate_language | the register’s name | its rows with the hash |
| si.read.proxy | POST /v1/read/proxy | the proxy and its version, the two dates, and a place | its members as a population, with the raw count, the estimate corrected by the recall and the undercount’s interval, its calibration by segment, its coverage by channel, and its co-membership with other proxies; for an aggregate-only proxy the counts alone and never a member |
| si.read.signals | POST /v1/read/signals | a monitor, a subject, a kind or a strategy, and a window | the facts, with the coverage and the count not evaluable for the same window |
| si.act.arm_monitor | POST /v1/act/arm_monitor | the monitor’s version, and for arming the preview it was judged by | the monitor’s new state |
| si.act.keep_basket | POST /v1/act/keep_basket | its name, its scope and its proxies by version | the basket with its version, not ready while any proxy is |
| si.act.keep_ladder | POST /v1/act/keep_ladder | its ordered rungs, each a predicate over the population, and the rung that qualifies; the rungs’ predicates in full where they are not yet kept | the ladder with its version, not ready while a rung’s predicate is not kept or does not compile |
| si.act.keep_monitor | POST /v1/act/keep_monitor | its name, its predicate, the place it runs at, the kind of signal it makes, the strategy where one is chosen, and for a platform monitor the vertical | the monitor with its version, not armed; not ready while its predicate does not compile at its place, with the reasons from compile |
| si.act.keep_proxy | POST /v1/act/keep_proxy | a proxy: its name, the facet kind it stands for, its scope, its rule as a predicate, its strength, its named control, its failure mode, and whether it is aggregate-only | the proxy with its version by hash, not ready until its controls have run and its calibration is read |
| si.work.build_facet | POST /v1/work/build_facet | a facet kind, a seed (a predicate, a list of communities, or a place from the gazetteer), the scope, and the positive and negative controls | the facet’s register with every candidate kept or dropped and its reason in words, its people, its pairs and its trend, and the facet not ready until its calibration is read |
| si.work.cancel | POST /v1/work/cancel | the preview | nothing |
The bars this system enforces#
Every bar is a row of the parameter register: an administrator changes it, and the platform reads it by name at the place of enforcement the row records.
| parameter | family | dimension | enforced at |
|---|---|---|---|
| the budgets of a predicate: how far it may expand, how much state it may keep, how large it may be, and how many semantic leaves a tenant may have armed | machinery | counts | compile |
| the shares of the population a breadth admits: the share of the units, ranked by nearness to a probe, that the meaning bar of each breadth lets through, from which the measurement of the bars sets the bar under the served model | machinery | a share per breadth (exact 0.001, similar 0.01, related 0.03, broad 0.1 as stipulated) | the measurement of the bars of nearness, on its beat, which writes the parameter row with the model, the time and the basis |
| the budget of each speed of the preview: units and time | machinery | a count of units; a time | the preview, for each speed |
| the bounds of a statement through the SQL path: rows returned, time and memory | machinery | a count; a time; bytes | the SQL path, on every statement |
| the beat’s budget: the units a tick may evaluate, and the definitions it may start | machinery | counts | the beat that runs the monitors and walks the rungs, which serves the definitions oldest first, one tenant after another, and leaves the rest for the next tick |
Claims#
| claim | state | route or tool |
|---|---|---|
| The platform serves 16 calls of The rules engine at contract 0476e35e6e275db5. | target | si.ask.preview |