Skip to main content

Research Prompt: What Should We Call the Entity Type Currently Named "automation"?

Date: 2026-02-17 Status: Closed — decision made. The entity type is workload. See ADR-010 for the formal decision and doc 09 section 9 for the comparative analysis. Context: SecurityV0 — an Autonomous Execution Exposure Management platform that discovers non-human identities, maps their execution paths, and produces deterministic findings.


The Problem

We have a naming collision in our data model. The word "automation" refers to two different things at two different scopes:

Scope 1: The entity (narrow) — NEEDS A NEW NAME

A single configured code/logic artifact discovered in a source system. Examples from ServiceNow:

SubtypeWhat it is
Business RuleServer-side script triggered by record changes
Script IncludeReusable server-side script library, called by other automations
Flow Designer FlowVisual automation flow (low-code)
Scheduled JobCron-like job that runs on a schedule
UI ActionServer-side script triggered by user button click
Event ScriptScript triggered by system events

These entities:

  • Are configured artifacts — they define executable behavior but don't execute on their own
  • Do not authenticate — they delegate to an identity via a RUNS_AS relationship
  • Are discovered by connectors from source systems (ServiceNow, Azure, GitHub, etc.)
  • Have subtypes that describe what KIND of artifact they are
  • Currently stored as entity_type: "automation" in our database

Scope 2: The full configured behavior (broad) — KEEPING "Automation Definition"

The complete chain from trigger through code, outbound connections, credentials, identity, to reachable resources. This is the page-level concept in our UI:

TRIGGER → [entity] → CALLS (outbound API) → RUNS AS (identity) → CAN ACCESS (resources)

This has been named "Automation Definition" — it describes the full definition of what an automation IS and DOES, including all its relationships.

The collision

If the page is "Automation Definition" and the entity within it is also called "Automation", we have "Automation inside Automation." In the UI, in the data model, in documentation — everywhere the word is overloaded.


The Settled Naming Model (decided by founder)

These names are FINAL and not up for discussion:

#ConceptNameDescription
1Full configured behaviorAutomation DefinitionThe complete chain: trigger → code → connections → identity → resources
2Derived structural pathAuthority PathPlatform-computed traversal showing how authority flows from automation to resources
3Runtime instanceAutomation RunOne execution of the full behavior (deferred to W2)
4Raw proof eventExecution EvidenceImmutable proof of execution (sign-in logs, transaction logs)

We need a name for the entity type — the individual code artifact (Scope 1 above) — that does NOT use the word "automation."


Our Data Model — The 9 Entity Types

The entity we're renaming exists alongside 8 other entity types. The new name must fit naturally in this taxonomy:

Current entity_typeDescriptionExample
identityAn entity that authenticates and acts in systemsService Principal, OAuth App, Machine Account
automation ← RENAME THISA configured artifact that defines executable behaviorBusiness Rule, Script Include, Flow, Scheduled Job
connectionAn outbound integration endpointREST Message, SOAP Message, HTTP Connection
credentialAuthentication materialOAuth Profile, API Key, Certificate
ownerA human or team accountable for an entityIT Admin, Security Team
roleA named grouping of permissionsApplication Role, Directory Role
permissionAn individual capability scoped to a resourceRead, Write, Execute, Admin
resourceA system object acted uponTable, API Endpoint, Repository
execution_evidenceImmutable proof of executionSign-in log, Flow execution record

Relationship pattern for this entity type

[THIS ENTITY] --TRIGGERS_ON--> Resource (what triggers it)
[THIS ENTITY] --RUNS_AS--> Identity (what identity it executes as)
[THIS ENTITY] --INVOKES--> Connection (what outbound endpoint it calls)
[THIS ENTITY] --CALLS--> [THIS ENTITY] (when one calls another, e.g., Business Rule calls Script Include)
Owner --OWNED_BY--> [THIS ENTITY] (who is accountable)

Key property: this entity type is the ONLY entity that has the RUNS_AS relationship — it delegates its execution to an identity. Identities authenticate; this entity type does not.


Constraints for the New Name

  1. Must NOT contain the word "automation" — that word belongs to the broader "Automation Definition" concept
  2. Must be a single word or short compound — it appears in code (entity_type: "new_name"), database queries, API filters, UI badges, and graph legends
  3. Must be generic enough to cover all subtypes: Business Rules, Script Includes, Flows, Scheduled Jobs, UI Actions, Event Scripts — and potentially similar artifacts from other platforms (Azure Logic Apps, GitHub Actions, AWS Lambda)
  4. Must be specific enough to distinguish from the other 8 entity types (not so generic it could mean anything)
  5. Must communicate "configured code/logic that can execute" — these are not static data, they are executable artifacts
  6. Must be platform-agnostic — not tied to ServiceNow vocabulary
  7. Should be natural in security/governance context — our audience is CISOs and security teams
  8. Should read well in sentences like:
    • "This [entity_type] has 3 execution paths"
    • "The [entity_type] runs as service principal X"
    • "Found 42 [entity_type]s with external egress"
    • "This [entity_type] is a Script Include"

Options We've Already Considered (and their weaknesses)

OptionWhy we're not sure
processOS connotations (PID, process management)
workflowScript Includes aren't workflows; too narrow
executableSounds like a binary file
componentToo generic — connections and credentials are also components
logicToo abstract, doesn't feel like a "thing"
routineProgramming-specific, unusual in security context
taskOverloaded (Airflow tasks, JIRA tasks, OS tasks)
actionOverloaded (GitHub Actions, UI Actions in ServiceNow)
artifactToo generic — everything is an artifact
automation_sourceStill contains "automation" adjacent; "source" is ambiguous
procedureSQL/database connotations
handlerDoesn't fit Scheduled Jobs or Flows

What We're Looking For

Please propose 3-5 naming options for this entity type. For each option:

  1. The name (as it would appear in entity_type: "name")
  2. Why it works — how it communicates "configured executable artifact"
  3. How it reads in context — test it in the sentences from the constraints section
  4. Potential downsides — what connotations or confusions could arise
  5. Industry precedent — does any security, DevOps, or orchestration platform use this term for a similar concept?

Prioritize names that a CISO would immediately understand and that a developer would find natural in code.