Description
ContentTraker Product Specification
AIID tokenized, reconstructed from the local ArticleMngrSLN codebase.
Status: Draft
Date: 2026-06-08
Source basis: Code and checked-in documentation in C:\Users\Richard\source\repos\PhxBiz\ArticleMngrSLN
Purpose: Determine whether the current implementation can be worked backward into a product specification.
1. Summary
ContentTraker is a private AI memory and workspace product. It lets authenticated users organize work into workspaces, projects, conversation threads, turns, prompts, personas, digital assets, and knowledge lanes. The product keeps user-created material and AI conversations in durable storage, makes selected knowledge searchable, and exposes scoped agentic interfaces so external AI tools can ask questions, create assets, and capture work without bypassing application authorization.
The repository name and namespaces still use ArticleMngr, but the visible product identity in the web UI and deployment topology is ContentTraker.
The product is built around three knowledge levels:
| Level | Product name | Used for |
|---|---|---|
| KBA | Knowledge Base Agent | Curated workspace/business knowledge from published digital assets. |
| KPA | Knowledge Pulse Agent | Project, thread, turn, and conversation-memory knowledge inside a workspace. |
| KUA | Knowledge User Agent | User-authorized synthesis across KBA, KPA, and reference workspaces. |
The main application hierarchy is:
User/Membership
-> Workspace (ContentKeeper)
-> Project
-> ConversationThread
-> ConversationTurn
-> DigitalAsset
-> ContentSourceSet
-> PersonalPrompt
-> Persona
-> MCP/API access keys
2. Code Evidence
This specification was reconstructed from these primary sources:
| Area | Evidence |
|---|---|
| Product home and visible hierarchy | ArticleMngrUserWeb/Components/Pages/Home.razor |
| Main navigation and product surfaces | ArticleMngrUserWeb/Components/Layout/NavMenu.razor |
| Workspace UI | ArticleMngrUserWeb/Components/Pages/ContentKeeperManagement.razor |
| User realm chat and journal | ArticleMngrUserWeb/Components/Pages/MyWorkspacePage.razor |
| Workspace model | ArticleMngrShared/Models/ContentKeeper.cs |
| Project model | ArticleMngrShared/Models/Project.cs |
| Thread and turn models | ArticleMngrShared/Models/ConversationThread.cs, ArticleMngrShared/Models/ConversationTurn.cs |
| Digital asset model | ArticleMngrShared/Models/DigitalAsset.cs |
| Knowledge lane routing | ArticleMngrShared/Engines/AgentRoutingService.cs |
| Workspace summary and MCP read surface | ArticleMngrShared/MCP/Services/WorkspaceReadService.cs |
| Workspace AI runtime | ArticleMngrShared/Engines/ResponsesConversationEngine.cs |
| KUA runtime | ArticleMngrShared/Engines/MyWorkspaceChatEngine.cs |
| MCP tools | ArticleMngrShared/MCP/WorkspaceMcpTools.cs, ArticleMngrShared/MCP/DigitalAssetMcpTools.cs, ArticleMngrShared/MCP/PromptPersonaMcpTools.cs |
| Dedicated MCP host | ArticleMngrMcpServer/Program.cs, ArticleMngrMcpServer/ArticleMngrMcpServerServiceCollectionExtensions.cs |
| KUA MCP host | KnowledgeUserAgent.Mcp/Program.cs |
| Token broker | TokenBrokerApi/Program.cs |
| Background ingest worker | ArticleMngrBackgroundWorkerService/Program.cs, ArticleMngrBackgroundWorkerService/ArticleMngrBackgroundWorkerServiceCollectionExtensions.cs |
| Commercial entitlement | ArticleMngrShared/Models/Commercial/*, ArticleMngrShared/Services/Commercial/* |
| Activity log and investigations | ArticleMngrShared/Models/WorkspaceActivityLogEntity.cs, ArticleMngrShared/Models/WorkspaceInvestigationEntity.cs, ArticleMngrUserWeb/Components/Pages/WorkspaceActivityLogPage.razor |
| Deployment topology | ContentTrakerAppHost/AppHost.cs |
| User manuals | _Documentation/UserManual/*.md |
3. AIID Token Convention
Token format:
AIID-CT-{AREA}-{NNN}
Rules used in this document:
CTmeans ContentTraker.- Tokens identify product intent, not filenames or method names.
- Source references point to local code evidence because this pass was requested from the codebase.
- Token status is
Draftbecause no product owner review has been recorded in this artifact.
4. Product Levels
| AIID area | Level | Used for | Primary entities or surfaces |
|---|---|---|---|
PRODUCT |
Product boundary | Defines ContentTraker as private AI memory for user-created work and workspace-scoped AI recall. | Home page, user manuals, AppHost |
IDENTITY |
User and access | Authenticates users, maps app users, manages roles and service-admin scope. | AppUser, RoleAssignment, claims pages |
COMMERCIAL |
Membership and entitlement | Controls paid/trial/commercial access and usage limits for expensive AI operations. | Membership, CommercialPlan, WorkspaceAiEntitlementGuard |
WORKSPACE |
Workspace | Top-level content and access boundary. In code this is ContentKeeper. |
ContentKeeper, Workspaces page |
PROJECT |
Project | Focuses work inside a workspace and groups threads toward a purpose or asset. | Project, project types |
THREAD |
Thread | Captures a conversation inside a project. | ConversationThread |
TURN |
Turn | Stores individual messages with role and inclusion/exclusion state. | ConversationTurn |
ASSET |
Digital asset | Retains files, prompts, transcripts, source summaries, and final outputs. | DigitalAsset |
SOURCE |
Source set | Groups imported/crawled external source material and its synthesized understanding. | ContentSourceSet, web crawler |
KBA |
Workspace knowledge lane | Searches published workspace digital assets. | FoundryVectorStoreId, KBA routing |
KPA |
Project memory lane | Searches project/thread/turn memory. | ProjectFoundryVectorStoreId, KPA routing |
KUA |
User realm lane | Synthesizes across authorized KBA/KPA sources and reference workspaces. | My Workspace, KUA MCP |
PROMPT |
Personal prompt | Stores reusable user instructions and promotes them into workspaces as prompt assets. | PersonalPrompt, My Prompts |
PERSONA |
Persona | Stores AI communication style and applies it at project level. | Persona, My Personas |
MCP |
Agentic interface | Lets external AI clients access workspace functions through scoped tokens or API keys. | MCP tools, TokenBroker |
INGEST |
Asset ingest | Converts, stores, queues, indexes, and audits asset ingestion. | AssetIngestWorker, blob/Cosmos/Foundry |
OPS |
Operations and diagnostics | Records application activity, investigations, retrieval diagnostics, and security scope. | Activity Log, Search Diagnostics |
DEPLOY |
Runtime topology | Defines deployed services and shared configuration boundaries. | Aspire AppHost |
5. AIID Token Registry
| AIID | Kind | Level | Intent | Acceptance rule | Source reference |
|---|---|---|---|---|---|
| AIID-CT-PRODUCT-001 | product-capability | PRODUCT | Present ContentTraker as private AI memory for created work, prompts, transcripts, files, and conversations. | Home page and authenticated app surfaces communicate workspace-scoped AI memory rather than a generic file manager. | ArticleMngrUserWeb/Components/Pages/Home.razor |
| AIID-CT-IDENTITY-001 | business-rule | IDENTITY | Resolve authenticated principals to app users and role assignments. | Protected product areas require authenticated app-user context before workspace or admin actions execute. | ArticleMngrShared/Models/AppUser.cs, ArticleMngrShared/Engines/AppUserEngine.cs |
| AIID-CT-IDENTITY-002 | business-rule | IDENTITY | Allow service-admin features only when the user has the role and activates the admin scope. | Admin links such as asset types, activity log, search diagnostics, claims, and security scope only appear in the active service-admin path. | ArticleMngrUserWeb/Components/Layout/NavMenu.razor |
| AIID-CT-COMMERCIAL-001 | business-rule | COMMERCIAL | Gate paid AI-backed operations through membership, plan, commercial status, and usage state. | Expensive workspace AI operations can be allowed, warned, or blocked from local commercial state without direct provider calls. | ArticleMngrShared/Services/Commercial/WorkspaceAiEntitlementGuard.cs |
| AIID-CT-WORKSPACE-001 | data-state | WORKSPACE | Use ContentKeeper as the workspace and access boundary. |
Workspace-scoped content, projects, members, assets, source sets, and vector-store bindings remain attached to the selected ContentKeeper. |
ArticleMngrShared/Models/ContentKeeper.cs |
| AIID-CT-WORKSPACE-002 | ux-element | WORKSPACE | Provide Workspace Management as the main authenticated work surface. | Selecting a workspace enables Conversation Manager, Knowledge Base, Agentic Interfaces, and MCP Access areas. | ArticleMngrUserWeb/Components/Pages/ContentKeeperManagement.razor |
| AIID-CT-PROJECT-001 | data-state | PROJECT | Use projects to group focused work inside a workspace. | A project has status, source, type, members, threads, optional persona, and optional produced digital asset. | ArticleMngrShared/Models/Project.cs |
| AIID-CT-PROJECT-002 | business-rule | PROJECT | Classify project intent with root project types. | Project lists can separate question capture, digital asset production, and harness conversation capture. | ArticleMngrShared/Models/ProjectType.cs |
| AIID-CT-THREAD-001 | data-state | THREAD | Store conversation threads inside projects. | A thread always references a project and can hold purpose, summary, prompt content, digital-asset usage state, session ID, turns, and token usage. | ArticleMngrShared/Models/ConversationThread.cs |
| AIID-CT-TURN-001 | data-state | TURN | Store each message as an auditable conversation turn. | Turns preserve role, content, thread ID, and exclusion state for downstream AI processing. | ArticleMngrShared/Models/ConversationTurn.cs |
| AIID-CT-ASSET-001 | data-state | ASSET | Retain digital assets as workspace knowledge objects. | Assets carry title, file metadata, type, status, source provenance, storage URL, tags, knowledge lane, and indexing state. | ArticleMngrShared/Models/DigitalAsset.cs |
| AIID-CT-ASSET-002 | validation | ASSET | Index only published non-prompt assets by default. | Assets are indexable when status is Published and the asset is not categorized as a prompt. |
ArticleMngrShared/Models/DigitalAsset.cs |
| AIID-CT-SOURCE-001 | data-state | SOURCE | Preserve external imported source sets separately from retained digital assets. | Crawled or imported sets store admission reason, intended use, source items, source-understanding reference, and context relationships. | ArticleMngrShared/Models/ContentSourceSet.cs |
| AIID-CT-KBA-001 | integration | KBA | Route workspace knowledge questions to curated workspace assets. | KBA is provisioned when the workspace has a workspace vector store binding used by Responses file_search. | ArticleMngrShared/Engines/AgentRoutingService.cs |
| AIID-CT-KPA-001 | integration | KPA | Route project memory questions to project/thread memory. | KPA is provisioned when the workspace has a project vector store binding. | ArticleMngrShared/Engines/AgentRoutingService.cs |
| AIID-CT-KUA-001 | integration | KUA | Synthesize across user-authorized KBA/KPA scope. | KUA can answer from the ordered user realm and must cite known workspace/lane/source context when useful. | ArticleMngrShared/Engines/MyWorkspaceChatEngine.cs |
| AIID-CT-PROMPT-001 | ux-element | PROMPT | Maintain a personal reusable prompt library. | Users can create, edit, activate/deactivate, delete, AI-draft, and promote prompts into a workspace. | ArticleMngrUserWeb/Components/Pages/PersonalPromptManagement.razor |
| AIID-CT-PERSONA-001 | ux-element | PERSONA | Maintain user-level AI speaking styles. | Active personas can be selected at project level and injected as AI instructions for project conversations. | ArticleMngrUserWeb/Components/Pages/PersonaManagement.razor, ArticleMngrShared/Models/Project.cs |
| AIID-CT-AI-001 | integration | KBA/KPA | Use Responses API as the active conversation runtime. | Conversation processing builds instructions, adds scoped KBA/KPA evidence, calls Responses, and persists assistant/error turns plus token usage. | ArticleMngrShared/Engines/ResponsesConversationEngine.cs |
| AIID-CT-MCP-001 | integration | MCP | Expose workspace tools through a scoped MCP boundary. | MCP calls validate session scope before listing workspaces, summarizing workspaces, asking questions, reading assets, or reading threads. | ArticleMngrShared/MCP/WorkspaceMcpTools.cs |
| AIID-CT-MCP-002 | command | MCP | Let external agents create workspace assets and capture conversation work. | Scoped MCP tools can create assets, append turns, capture threads, and queue ingestion without direct storage access. | ArticleMngrShared/MCP/DigitalAssetMcpTools.cs, ArticleMngrShared/MCP/ConversationBatonMcpTools.cs |
| AIID-CT-INGEST-001 | business-rule | INGEST | Process asset ingestion outside the web and MCP request path. | The worker owns ingest processing, including classification, storage, conversion, vector-store upload, telemetry, and fallback policy. | ArticleMngrBackgroundWorkerService/ArticleMngrBackgroundWorkerServiceCollectionExtensions.cs |
| AIID-CT-OPS-001 | data-state | OPS | Record workspace activity events and investigation records. | Important workflows can emit correlated activity rows and service-admin users can investigate and annotate them. | _Documentation/Application-Activity-Log-Feature-Guide.md |
| AIID-CT-OPS-002 | ux-element | OPS | Provide diagnostics for KBA/KPA retrieval readiness and evidence. | Search Diagnostics runs selected-workspace KBA and KPA diagnostics and explicitly excludes KUA execution. | ArticleMngrUserWeb/Components/Pages/SearchDiagnostics.razor |
| AIID-CT-DEPLOY-001 | integration | DEPLOY | Deploy ContentTraker as a multi-service Azure/Aspire application. | AppHost declares userweb, mcp, kua-mcp, tokenbroker, and worker, using existing Azure platform resources and shared configuration. |
ContentTrakerAppHost/AppHost.cs |
6. Core Product Workflows
AIID-CT-WORKSPACE-010 - Create and Select Workspace
Actor: Authenticated user
Intent: Create a bounded area for related work and AI memory.
Flow:
- User opens Workspace Management.
- User creates or selects a workspace.
- The workspace stores name, description, purpose, type, members, projects, assets, source sets, tag references, and vector-store bindings.
- The selected workspace enables Conversation Manager, Knowledge Base, Agentic Interfaces, and MCP Access.
Acceptance rule: A selected workspace becomes the enforced boundary for projects, threads, assets, knowledge setup, tokens, and MCP access.
AIID-CT-KNOWLEDGE-010 - Build Workspace Knowledge
Actor: User, MCP client, background worker
Intent: Convert retained assets into searchable workspace knowledge.
Flow:
- User or MCP client creates a digital asset.
- Asset metadata and content are stored through app-owned resource access.
- Asset is assigned status, type, source/provenance metadata, and knowledge lane.
- Ingest work is queued.
- The background worker loads content, converts when needed, uploads to the configured vector-store lane, and updates indexing state.
Acceptance rule: Published non-prompt KBA assets are candidates for workspace knowledge retrieval; KPA assets are project-memory candidates.
AIID-CT-CONVERSATION-010 - Ask a Workspace Question
Actor: User or scoped MCP client
Intent: Ask a question inside a workspace and preserve the result as project/thread memory.
Flow:
- User or MCP client submits a question.
- The app resolves workspace and project scope.
- A conversation thread is created or reused.
- User turn is appended.
- KBA and KPA retrieval run when digital assets are enabled.
- Responses API receives conversation context, workspace instructions, persona/thread instructions, and retrieved evidence.
- Assistant or error-handling turn is persisted.
Acceptance rule: The answer must be grounded in supplied context where available and must say what is missing when context is insufficient.
AIID-CT-KUA-010 - Ask My Workspace
Actor: Authenticated user
Intent: Ask across the user's authorized ContentTraker realm.
Flow:
- User opens My Workspace.
- System resolves the user's home workspace.
- System loads the ordered realm of accessible workspaces.
- KUA searches across authorized KBA/KPA evidence.
- The answer is generated into the home workspace chat thread.
Acceptance rule: KUA scope is constrained to workspaces the user is authorized to manage or view.
AIID-CT-MCP-010 - Connect Agentic Interface
Actor: User, external AI client
Intent: Let external AI tooling work with a workspace safely.
Flow:
- User selects a workspace and project.
- User creates a scoped token or agentic interface key.
- External client calls MCP HTTP tools with bearer auth or bootstrap/API-key flow.
- Server validates ContentKeeper and Project scope.
- Tools operate only inside validated scope and authorized reference workspaces.
Acceptance rule: MCP tools must not silently fall back to another workspace or project when binding is missing or invalid.
AIID-CT-OPS-010 - Investigate What Happened
Actor: ServiceAdmin, AI investigation tool
Intent: Reconstruct operational behavior after a visible user action.
Flow:
- Application emits correlated activity events.
- ServiceAdmin opens Activity Log.
- User filters events or opens an investigation.
- Investigation records problem, resolution, notes, narrative, and related activity rows.
- ActivityLog MCP can inspect and update investigation records through a controlled tool surface.
Acceptance rule: A user-visible workflow can be reconstructed through correlation IDs and investigation records without direct storage credentials.
7. Product Surface Map
| Surface | Route or host | Primary use | AIID anchors |
|---|---|---|---|
| Home | / |
Explain ContentTraker and its hierarchy. | AIID-CT-PRODUCT-001 |
| Workspace Management | /workspaces |
Manage workspaces, projects, threads, knowledge, agentic interfaces, and MCP access. | AIID-CT-WORKSPACE-002 |
| My Workspace | /my-workspace |
Chat across authorized realm and maintain journal entries. | AIID-CT-KUA-001 |
| My Prompts | /my-prompts |
Manage reusable user prompts. | AIID-CT-PROMPT-001 |
| My Personas | /personas |
Manage reusable AI communication styles. | AIID-CT-PERSONA-001 |
| User Profile | /userprofilepage |
Manage profile, time settings, and default AI settings. | AIID-CT-IDENTITY-001 |
| Subscription | /commercial/access |
Show membership and commercial access state. | AIID-CT-COMMERCIAL-001 |
| Search Diagnostics | /search-diagnostics |
Diagnose selected-workspace KBA/KPA retrieval. | AIID-CT-OPS-002 |
| Activity Log | /activity-log |
Inspect operational events and investigations. | AIID-CT-OPS-001 |
| Security Scope Inspector | /admin/security-scope |
Inspect claims, roles, and active security scope. | AIID-CT-IDENTITY-002 |
| Asset Type Management | /admin/asset-types |
Govern digital asset taxonomy. | AIID-CT-ASSET-001 |
| MCP HTTP host | /mcp on ArticleMngrMcpServer |
External scoped workspace tools. | AIID-CT-MCP-001 |
| KUA MCP HTTP host | /mcp on KnowledgeUserAgent.Mcp |
User-realm second-brain tools. | AIID-CT-KUA-001 |
| Token Broker API | TokenBrokerApi |
Exchange/issue workspace-scoped access credentials. | AIID-CT-MCP-010 |
| Background Worker | ArticleMngrBackgroundWorkerService |
Process asset ingest jobs. | AIID-CT-INGEST-001 |
8. Business Rules
| AIID | Rule |
|---|---|
| AIID-CT-WORKSPACE-020 | Workspace scope is the product's main security and context boundary. |
| AIID-CT-PROJECT-020 | A project must live inside one workspace and may contain many threads. |
| AIID-CT-THREAD-020 | A thread must live inside one project and preserves all included turns used for AI processing. |
| AIID-CT-ASSET-020 | Digital assets are retained as metadata plus lazy-loaded content; blob content is not assumed to be loaded with metadata. |
| AIID-CT-ASSET-021 | Prompt assets are not indexed as normal KBA assets by default. |
| AIID-CT-KBA-020 | KBA readiness depends on workspace vector-store binding, not legacy Persistent Agent IDs. |
| AIID-CT-KPA-020 | KPA readiness depends on project vector-store binding. |
| AIID-CT-KUA-020 | KUA is a logical user-authorized synthesis lane and can use available KBA/KPA bindings. |
| AIID-CT-AI-020 | Active conversation runtime uses Responses API with scoped retrieval context; legacy Foundry agent IDs are retained as metadata/cleanup state. |
| AIID-CT-COMMERCIAL-020 | Commercial authorization should use local ContentTraker records rather than live payment-provider calls during normal requests. |
| AIID-CT-MCP-020 | External tool access must validate workspace/project scope before execution. |
| AIID-CT-OPS-020 | Operational logs should preserve correlated workflow history and investigations as separate long-lived records. |
9. Data Objects
| Object | Product role | AIID anchors |
|---|---|---|
AppUser |
Authenticated application user with claims, roles, preferences, and defaults. | AIID-CT-IDENTITY-001 |
RoleAssignment |
Role grant scoped to user and optional entity boundary. | AIID-CT-IDENTITY-002 |
Membership |
Commercial account that pays for or governs usage. | AIID-CT-COMMERCIAL-001 |
CommercialPlan |
Product capability and usage policy. | AIID-CT-COMMERCIAL-001 |
MembershipUsageMonth |
Monthly usage aggregate for entitlement checks. | AIID-CT-COMMERCIAL-001 |
ContentKeeper |
Workspace boundary. | AIID-CT-WORKSPACE-001 |
Project |
Focused work area inside a workspace. | AIID-CT-PROJECT-001 |
ProjectType |
Project intent classifier. | AIID-CT-PROJECT-002 |
ConversationThread |
Conversation container. | AIID-CT-THREAD-001 |
ConversationTurn |
Message-level memory. | AIID-CT-TURN-001 |
DigitalAsset |
Retained knowledge artifact and storage/indexing state. | AIID-CT-ASSET-001 |
ContentSourceSet |
Imported source-set boundary and source-understanding anchor. | AIID-CT-SOURCE-001 |
PersonalPrompt |
User-level reusable prompt. | AIID-CT-PROMPT-001 |
Persona |
User-level AI behavior profile. | AIID-CT-PERSONA-001 |
McpApiAccessKey |
Agentic interface credential and reference-workspace binding. | AIID-CT-MCP-001 |
WorkspaceActivityLogEntity |
Operational event row. | AIID-CT-OPS-001 |
WorkspaceInvestigationEntity |
Human/agent interpretation of operational events. | AIID-CT-OPS-001 |
10. Runtime Architecture
The product runs as a multi-service application:
| Service | Responsibility |
|---|---|
ArticleMngrUserWeb (userweb) |
Blazor Server UI for workspaces, knowledge, conversations, prompts, personas, settings, subscription, diagnostics, and admin tools. |
ArticleMngrMcpServer (mcp) |
HTTP MCP host for workspace-scoped tools. |
KnowledgeUserAgent.Mcp (kua-mcp) |
HTTP MCP host for user-realm KUA tools. |
TokenBrokerApi (tokenbroker) |
Token/API-key exchange and authorization support for external clients. |
ArticleMngrBackgroundWorkerService (worker) |
Exclusive processor for asset ingest jobs and indexing work. |
| Existing Azure resources | Cosmos DB, Blob Storage, Key Vault, Azure App Configuration, Azure AI Foundry, and related platform services. |
Configuration is intended to come from Azure App Configuration and Key Vault references. The Aspire AppHost declares the service topology but does not provision the external platform resources.
11. Accessibility and UX Expectations
These expectations are inferred from the Blazor UX, Bootstrap patterns, and AIID accessibility requirements:
| AIID | Expectation |
|---|---|
| AIID-CT-UX-001 | Primary navigation links must expose clear labels and active state for authenticated users. |
| AIID-CT-UX-002 | Workspace selection must clearly enable or disable dependent workspace tools. |
| AIID-CT-UX-003 | Provisioning, indexing, diagnostics, and MCP-token actions must expose busy, success, failure, and retry states. |
| AIID-CT-UX-004 | Admin-only areas must not appear as normal user actions. |
| AIID-CT-UX-005 | AI answers must distinguish grounded evidence from missing or insufficient context. |
12. Reverse-Engineering Findings
The codebase is spec-reconstructable. The strongest product anchors are the domain models, user manuals, workspace UI, knowledge-lane routing services, MCP tools, and Aspire AppHost.
Findings:
- The product boundary is clearer than the repository name.
ArticleMngris the implementation namespace;ContentTrakeris the product. ContentKeeperis the real workspace boundary and should be named as such in any formal spec.- KBA, KPA, and KUA are real product levels in code, not only documentation labels.
- The active AI runtime is Responses API plus scoped retrieval context. Legacy Persistent Agent IDs remain as metadata and cleanup state.
- External AI access is a first-class product capability, not a developer-only side channel.
- Commercial entitlement is emerging as a real business boundary around AI-backed usage.
- Activity logging and investigations are becoming an operational-memory capability that may later be separated as its own service.
13. Open Questions
| AIID | Question |
|---|---|
| AIID-CT-OPEN-001 | Should the public product language call the top-level object "Workspace" only, or expose ContentKeeper as an internal/spec term? |
| AIID-CT-OPEN-002 | Should KBA/KPA/KUA be presented to end users as named agents, named knowledge levels, or hidden routing concepts? |
| AIID-CT-OPEN-003 | Is publication lifecycle still a core user-facing product promise, or is it legacy from ArticleMngr-era language? |
| AIID-CT-OPEN-004 | What usage caps, price tiers, and hard enforcement rules should move from commercial planning into approved product behavior? |
| AIID-CT-OPEN-005 | Should Activity Log remain embedded in ContentTraker or become a shared operational service? |
| AIID-CT-OPEN-006 | Which AIID tokens should eventually be embedded in UI via data-aiid-token attributes for traceability overlays? |
14. Recommended Next Step
To turn this reconstructed document into an approved product specification:
- Review and approve the product-level names for Workspace, KBA, KPA, KUA, Agentic Interfaces, and My Workspace.
- Decide which open questions should be resolved before tokenizing UI elements.
- Convert this draft into the AIID document flow:
contenttraker.spec.original.v1.0.mdcontenttraker.spec.aiid-assumptions.v1.0.mdcontenttraker.spec.aiid-tokenized.v1.0.mdcontenttraker.spec.aiid-final.v1.0.md
- Promote the draft token registry in this document to the authoritative AIID registry only after the approved names and levels are stable.
