On this page
Overview
Defines the closing-report tool, instruction, result normalizer, call classifier, and formatter.
- Artifact
ConversationClosingReport.js· esm - Classification
public first party - Availability
Cross-host - Normalization
Required user-facing message remains distinct from the complete final_message; normalized results expose message, finalMessage, and rememberedActions.
Import and lifecycle
import * as module from '/arcane/modules/ConversationClosingReport.js';
Pure tool-schema, instruction, classification, normalization, and escaped-text formatting; it performs no inference, persistence, rendering, action, navigation, or delivery.
Application-facing behavior: Six constants/helpers for closing reports; the sole-call schema requires message and finalmessage.
Protocol and host implementation
In-process only This detail does not widen the application-facing API or grant authority.
Exports, signatures, parameters, and results
| Binding | Form | Declaration or signature | Parameter syntax |
|---|---|---|---|
createConversationClosingReportTool | function | function createConversationClosingReportTool({
name=DEFAULT_TOOL_NAME,
description='Prepare a complete closing report when the user clearly ends a conversation.'
}={}) | {
name=DEFAULT_TOOL_NAME,
description='Prepare a complete closing report when the user clearly ends a conversation.'
}={} |
conversationClosingReportInstruction | function | function conversationClosingReportInstruction({
enabled=true,
toolName=DEFAULT_TOOL_NAME,
completionTrigger='the user clearly says they are finished or explicitly asks to wrap up'
}={}) | {
enabled=true,
toolName=DEFAULT_TOOL_NAME,
completionTrigger='the user clearly says they are finished or explicitly asks to wrap up'
}={} |
normalizeConversationClosingReport | function | function normalizeConversationClosingReport(value) | value |
classifyConversationClosingReportCalls | function | function classifyConversationClosingReportCalls(calls={}, {
toolName=DEFAULT_TOOL_NAME
}={}) | calls={}, {
toolName=DEFAULT_TOOL_NAME
}={} |
formatConversationClosingReport | function | function formatConversationClosingReport(value) | value |
CONVERSATION_CLOSING_REPORT_TOOL_NAME | alias · value | DEFAULT_TOOL_NAME as CONVERSATION_CLOSING_REPORT_TOOL_NAME | — |
Parameter meanings and results
createConversationClosingReportTool(options) returns a mutable function-tool schema requiring nonempty string message and final_message fields; remembered_actions remains optional. normalizeConversationClosingReport(value) accepts an object or JSON and returns mutable {message,finalMessage,rememberedActions}; the classifier accepts only a sole named call. message is the brief user-facing progress text for accepting and rendering the call, while final_message remains the complete closeout and the formatter HTML-escapes only that final text.
Events, side effects, and errors
Source-literal CustomEvent dispatches
No source-literal CustomEvent dispatch is part of this artifact.
Lifecycle and event flow
This artifact has no additional documented lifecycle event flow.
Direct coded failures
CONVERSATION_CLOSING_REPORT_INVALID
Exported Error subclasses
This artifact exports no Error subclass.
Documented failure behavior
- CONVERSATION_CLOSING_REPORT_INVALID
Availability and capabilities
Cross-host. Required user-facing message remains distinct from the complete final_message; normalized results expose message, finalMessage, and rememberedActions.
Provider-neutral terminal tool contract; the app and provider own calling and any consented local persistence.
Contract example
import {normalizeConversationClosingReport, formatConversationClosingReport} from '/arcane/modules/ConversationClosingReport.js';
const report=normalizeConversationClosingReport({
message:'Preparing the conversation closeout.',
final_message:'All requested work is complete.',
remembered_actions:[]
});
console.log(formatConversationClosingReport(report));
Related reference
No direct Core call is claimed for this artifact. Any injected provider or consuming module retains its own documented authority.