Skip to content
Centriu
Centriu Vértice

Single-Identity Business-Network Actor-Scope Automation: The Guard That Assumes an Organization Doesn't Work Here

Every other Centriu system an AI agent has been given tool access to in this pillar organizes its data around an organization boundary — a business's own account, isolated from every other business's. Centriu Vértice does not: it is one single, shared business network, and a member's identity is their own individual user account, not an organization ID. That difference breaks an assumption the rest of the codebase's standard authorization guard depends on — a guard that resolves the acting identity from the current session's own authenticated user has nothing to resolve for a service-role-driven AI agent, which has no session at all. The tool suite built for this system instead takes an explicit actor identifier as its own argument for every call, resolved deliberately each time rather than assumed from a session that doesn't exist. A second, related rule is enforced directly in how that actor is resolved: the agent always represents one single, fixed identity — the network's own house account — never any other member, even though the underlying general-purpose network functions were written to accept any member as a valid actor.
One fixed house identity
Name and phone stay protected
Small business owner using a phone
One fixed identity — the house, never another member.

A security pattern that works everywhere else can still be the wrong one for a genuinely different design

Reusing a proven authorization pattern across every system in a codebase is usually the safer default — one well-understood mechanism is easier to audit than a dozen bespoke ones. That default stops being safe the moment a new system's underlying design genuinely doesn't match the assumption the pattern depends on. A guard built to resolve "who is asking" from an active user session works precisely as long as every caller has one; the first caller that doesn't — a background job, a service-role integration, an AI agent with no login of its own — doesn't fail loudly. It fails by resolving to nobody, unless something was deliberately built to handle that case differently.

How the underlying problem shows up before you fix it

A new system is added to a platform with a genuinely different identity model (one shared space instead of per-organization isolation) than every other system already built.

A standard authorization guard used throughout a codebase takes no explicit argument, relying instead on resolving the caller's identity from the current authenticated session.

A caller that has no session at all — a scheduled job, a service-role integration, an AI agent acting on someone's behalf — has nothing for that kind of guard to resolve, with no clear signal distinguishing "correctly identified nobody" from "the guard silently failed."

An underlying set of business functions was originally written to accept any authenticated member as a valid actor, and a new caller layered on top needs to be restricted to acting as exactly ONE specific identity, not the open set the original functions allow.

A handful of fields on a shared profile are meant to be protected from a specific class of caller, and nothing prevents a new tool from being built with a path that bypasses that protection unless it is deliberately excluded.

How the tool suite was built around an explicit actor instead of an assumed session

The migration's own header comment states the distinguishing fact directly: Vértice is a single network with no organization boundary — identity is the member's own user account — and guards without an explicit argument rely on the currently authenticated session, which a service-role-driven caller like an AI agent simply does not have. Building this tool suite on the standard no-argument guard pattern used elsewhere in the codebase would not have failed with an error; it would have silently resolved to no valid actor, and every call would have failed in a way that looked identical to a real authorization rejection, making the two indistinguishable without reading the guard's own source.

The tool suite avoids that entirely by never relying on session resolution: every function takes the calling agent's own identifier as an explicit argument, looks up that agent's record directly, and — critically — resolves the human identity it should act as from a single, fixed value hard-coded into the context-resolution function itself, rather than from anything the agent's own request supplies. That fixed value represents the network's own house account: the one membership that represents the business itself inside this single shared network. Every tool built on top of that context — updating the house's own profile, registering its company, drafting or publishing an opportunity, submitting a referral, reading its own connections — inherits that same fixed identity automatically; there is no argument anywhere in the suite through which a caller could substitute a different member's identity instead.

Two further protections sit inside that same design. First, two specific profile fields — legal name and phone number — are excluded entirely from the agent's own profile-update tool; both are protected at the database layer by a trigger that the tool's own single write path (a shared, pre-existing save function used for every other field) does not bypass, meaning even a request that explicitly asked to change them has no code path capable of doing so. Second, because this network is new and had, at the time of writing, a single member profile in it, the training material built alongside these tools instructs the agent explicitly that near-zero counts across the panorama tool are a sign of early adoption, not a malfunction — a specific, concrete guardrail against an AI agent seeing an empty-looking network and reporting it to the business owner as though something were broken.

What is actually built today

Every tool in the suite takes the calling agent's own identifier as an explicit argument and resolves its authorization from that agent's own record — never from an assumed, nonexistent session.

The human identity every tool acts as is resolved from one single, fixed value inside the context-resolution function itself, representing the network's own house account — no argument anywhere lets a caller substitute a different member.

Legal name and phone number are excluded from the agent's profile-update tool entirely, protected by a database trigger the tool's own write path does not bypass.

The panorama tool's own accompanying guidance instructs the agent that near-zero counts reflect the network's early stage, not a defect — heading off a specific, concrete misinterpretation before it could occur.

Underlying network operations that reject an action for their own business reasons (an incomplete profile, an unconfirmed phone number) return that specific reason in plain language rather than a raw internal error.

Confirmed today via direct inspection: the fixed house-identity resolution, the excluded profile fields, and the explicit-actor argument pattern all remain part of the current tool suite.

A guard with nothing to resolve (illustrative scenario, not a real client)

Applying the standard no-argument guard used elsewhere in the codebase to this system would mean every AI-agent call attempts to read the current session's own authenticated user — a value that simply doesn't exist for a service-role process. The call doesn't error out with a clear "no session found" message; it resolves to no valid actor, and every downstream check built on top of that fails the same way a genuine unauthorized request would, with nothing in the response distinguishing the two.

What changes operationally

An AI agent can now operate on Centriu Vértice's single, shared business network on the business's own behalf specifically — never impersonating another member — using an authorization pattern built for a system that genuinely has no organization boundary, rather than one borrowed from systems that do.

When this is not the right fit

This actor-scope pattern is specific to Vértice's own no-organization design — it does not apply to, and does not change, the organization-scoped authorization guard used by every other Centriu system, which continues to resolve identity from an organization boundary that genuinely exists for those systems.

Reusing a pattern everywhere vs. matching the pattern to the actual design

Applying one proven authorization mechanism uniformly across every system in a codebase is easier to reason about — until one system's underlying identity model genuinely doesn't match what that mechanism assumes. Centriu's approach here is to recognize that mismatch explicitly rather than force a session-based guard onto a system built with no session-based identity to check, building an actor-scoped alternative specific to what this one system actually is.

Related systems

Main system: Centriu Vértice. Complementary when relevant: Centriu Axis.

What it does NOT do

  • Does not let any tool in this suite act as a network member other than the network's own fixed house account — there is no argument through which a different identity could be substituted.
  • Does not expose legal name or phone number to the agent's profile-update tool under any circumstance — both are excluded from its write path entirely, protected by a database trigger.
  • Does not change the organization-scoped authorization guard used by every other Centriu system — this actor-scope pattern is specific to Vértice's own no-organization design.
  • Does not let the agent approve or reject a candidate's application to join the network — that remains a human decision made directly in the application.
  • Does not treat a near-zero count on the panorama tool as a signal to alert the business owner about a malfunction — the accompanying guidance explicitly frames early-stage adoption as the expected state, not a defect.
  • Does not claim this pattern generalizes automatically to any future no-organization system Centriu might build — each one would need its own actor-scope design matching its own actual identity model.

Security and governance

Every tool in this suite resolves the calling agent's own identity explicitly and always acts as the network's own single, fixed house account — never as another member. Any personal or business data referenced remains subject to Brazil's LGPD (Law No. 13,709/2018). Full detail on access control lives at /governanca and /iso.

Pricing and contracting

Available on a single plan. Values and terms come from the official pricing table at /precos (Centriu's central source — never restated here).

Frequently asked questions

Why can't Vértice reuse the same authorization guard as other Centriu systems?

That guard resolves the acting identity from the current authenticated session, which a service-role-driven AI agent doesn't have — and Vértice has no organization boundary to fall back on either, since it is one single shared network.

Can the AI agent act as a different network member if asked to?

No — every tool in the suite resolves to one single, fixed house identity inside its own context-resolution function; there is no argument anywhere that accepts a different member to act as.

Can the agent change a member's legal name or phone number?

No — both fields are excluded entirely from the agent's profile-update tool and are protected at the database layer by a trigger that tool does not bypass.

Why does the network show mostly zero counts?

The network is new — at the time these tools were built, it held a single member profile. The tools' own accompanying guidance explicitly frames that as early adoption, not a malfunction.

Who decides whether a candidate is admitted to the network?

A human reviewer, directly in the application — the AI agent's tool suite has no path to approve or reject an entry request.

What does Centriu Vértice cost?

It is sold on a single published plan — exact current value is on the central pricing page.

See how Centriu Vértice scopes AI-agent access without an organization boundary

Reach our commercial team directly, or leave your details below — we'll follow up with guidance for your case.

Sources

  1. Centriu Vértice — public product page — Centriu, 2026-07-20 · link(primária)
  2. Centriu Vértice — public factsheet (API, JSON) — Centriu, 2026-07-21 · link
  3. Centriu Axis — public product page — Centriu, 2026-07-20 · link(primária)
  4. Centriu Axis — public factsheet (API, JSON) — Centriu, 2026-07-21 · link
  5. Law No. 13,709/2018 — Brazil’s General Data Protection Law (LGPD) — Presidência da República (Brazil), 2018-08-14 · link

Last material update on .

By · AI-assisted production, with human review