progress upcoming and completed features and products
This document has been superseded by the Bug Console at develop.ns.

SXD SYSTEM 8 - PATCHES/FEATURES DONE
	(7.2.0-8.3.11.1 changes)

COMPANION 8 - THE "YES, WE KNOW WHAT RLV IS" UPDATE - DONE
	8.4.0m1 moved @follow from _bonds to _compliance
	8.4.0m1 @follow priority management should be better now
	8.4.0m1 @navigate in _compliance (support for automated navigation)
	8.4.0m1 an attempt at fixing repeated autolock
	8.4.0m1 message 42 (INTERFERENCE_STATE) allowing system modules to react to interference. Proof of concept: _ambiance will now shut off audio output entirely when type S interference is present.
	8.4.0m1 support for 'weapon' bus messages to _sentinel
	8.4.0m1 removed 'light' message (old OSL will no longer work fully)
	8.4.0m1 'power' message now sends every 10 seconds to all devices; format changed from percentage to float
	8.4.0m1 'rate' and 'power' now send to any newly-attached device
	8.4.0m1 converted arabesque 'sound' and 'preload' verbs into actual system commands
	8.4.0m1 arabesque 'vox' command now '@sound vox ...'
	8.4.0m1 interference now in _coil (introduced bug? interference not applied if shield fails)
	8.4.0m1 blocked _coil from emitting multiple 'charge cycle complete' audio notifications
	8.4.0m1 port protocol
	8.4.0m1 @persona now lists active RLV folder
	8.4.0m1 new probe strategy for finding batteries on attach: system probes 6 times at a normal interval until it finds a battery; this may solve every issue forever?
	8.4.0m1 refactor _console-screen::_manager into _core and _interface (expect bugs)
	8.4.0m1.1 finished incomplete optimization of _power that was causing charging issues
	8.4.0m1.2 implemented '@navigate auto'
	8.4.0m1.2 cleaned up '@zap'
	8.4.0m1.2 fixed BaCdrive charge bug
	8.4.0m1.3 fixed issues with manual starting of node navigation
	8.4.0m1.3 added exception to battery probe strategy for BaCdrive 
	8.4.0m1.3 added beta-version tagging (displays in @about and on main menu)
	8.4.0m1.3 restored persona and carrier display to HUD
	8.4.0m1.3 progress on fixing exhibition-tty listener overflow
	8.4.0m1.3 fixed HUD removing section -1 for devices that did not have a section
	8.4.0m2 simple @off, @halt and @reboot commands
	8.4.0m2 @send <range> <channel> <message> - range is 0 (regionsayto self), 10 (whisper), 20 (say), 100 (shout), region (regionsay), UUID (regionsayto)
	8.4.0m2 fixed HUD not responding to @probe—no more need to reboot to make the HUD show up!
	8.4.0m2 public bus 'trigger' verb for event handling (_arabesque should hook for event-driven e_ action notecards; provide linked message API for other programs to respond, too)—this could be used for adding on extra custom environmental reactions to things like sitting on a charger or leaving a display booth; similar to 'navigate'; consider adding e_attach?
	8.4.0m2 renamed '_init' script to 'e_boot'
	8.4.0m2 added 'e_charge-start', 'e_charge-stop', 'e_shutdown' events
	8.4.0m2 arabesque now issues commands with id of script activator, not unit; added $user and $username evars for object that activated the script
	8.4.0m2 added 'H^ ' for deleting spaces before variables in arabesque.
	8.4.0m2 restructured menus into putative 8.4.0 format
	8.4.0m2 @commands reindex

	8.4.0m2 full RLV relay (new External Restriction Interface (ERR) module named _restraint, not to be confused with old CSB module name)

	8.4.0m2 ERR multiple restraint source integration
	8.4.0m2 ERR restraint removal
	8.4.0m2 ERR block system chat when in effect
	8.4.0m2 ERR @clear command implemented

	8.4.0m2 @charge command for interfacing with chargers directly
	8.4.0m2 attempt to fix animation permissions errors in _bonds
	8.4.0m2 attempt to eliminate remaining issues with local HUD not showing up when it should

	8.4.0m2 power profiles should now update menu text correctly
	8.4.0m2 moved vox filter interface from _obedience into _compliance to cope with enlarged command vocabulary overloading the index
	8.4.0m2 ERR send !release,ok in response to @safeword

	8.4.0m2 integrated HUD for akashic icon

	8.4.0m2.1 gender-q and gender lightbus messages; 610 (EFFECT_VOCAL) and 611 (SEND_GENDER) messages
	8.4.0m2.1 fixed missing menu graphics in manage > policy
	8.4.0m2.1 commands will automatically re-index rather than reporting 'command not found' if no commands are known
	8.4.0m2.1 HUD should now accept messages from non-controller peripherals; should make @rainbow work correctly
	8.4.0m2.1 menu states for _restraint options
	8.4.0m2.1 _foundation will now auto-boot after reset once _oem is done loading—let's find out if this is a bad idea!
	8.4.0m2.1 basic captive audio (audience); no point in using it yet, though; has the awkward habit of punching through intended deafness
	8.4.0m2.1 work on fixing xanadu 8.3 bug that prevents available updates from being displayed
	8.4.0m2.1 improved HUD efficiency; cleaned up possible sources of misbehavior e.g. stuck hovertext
	8.4.0m2.1 expanded 601 (QUERY_BATTERY) into DEVICE_QUERY so _sentinel can re-poll for HUD key
	8.4a revalued jump to be 403 J/sec instead of 203 J/sec
	8.4a fixed a bug where rejected devices would install anyway
	8.4a removed 'keychain migrate' command: rarely used and upgrades from earlier than 8.2 can just install 8.3 temporarily if they really need it
	8.4a automatically add accepttp exceptions for owners provided the unit can teleport
	8.4a UPM CLI: @guest
	8.4a UPM consent
	8.4a UPM menu interface (included under manage > users)
	8.4a fixed 'previous' and 'next' buttons on user browser
	8.4a UPM integration for _restraint and _compliance::navigate
	8.4a UPM-authorized adding for light bus devices not owned by unit
	8.4a Renamed 'System' package to 'Companion' henceforth; added 'ATOS/E' package to list of updatables.
	8.4a UPM: owner-vs-object distinction (still has some bugs)
	8.4a ATOS real death (messages 905 and 906)
73	8.4a Cleaned up bootstyle and boot sequence slightly
	8.4b.-1.20160601 Added additional exceptions to guest access for controller and self access (when unit is own guest)
	8.4b.-1.20160601 Added default action selection: either accept (temporary whitelist) or deny (ignore access request.) Deny is the default. Asymmetric options are to minimize hassle required to fix the issue if the unit is AFK.
	8.4b.-1.20160601 require basic local access to control the dwm session - no more menu prompts for rejectees
	8.4b.-1.20160601 RLV relay should default to off!
	8.4b.-1.20160601 fixed guest access prompt for registered users; caused by keychain changes—cached permission bit now cleared before all keychain operations
	8.4b.-1.20160601 fixed "details" button not working on guest access dialogs for users (should have been "details...")
	8.4b.-1.20160601 fixed guest access prompts appearing for NULL_KEY and blank key
	8.4b.-1.20160601 added "!lamp on" and "!lamp off" for upcoming flicker script improvements
	8.4b.-1.20160601 fixed owners list not being cleaned after object transfer
	8.4b.-1.20160601 fixed badge clicks not working on _console-screen
	8.4b.-1.20160716 re-fixed guest access prompts appearing for NULL_KEY and blank key
	8.4b.-1.20160716 resolved enormous and redundant lists of secure commands in the @commands index
	8.4b.-1.20160716 @audience; audience will now respect subsystem status and interference for hearing (still needs ERR integration)
	8.4b.-1.20160716 no execution of e_boot? issue seemed to go away when poked
	8.4b.-1.20160716 started implementation of chassis spec; _foundation and _power on stack-heap watch
	8.4b.-1.20160716 relocated whole remote control interface to _bonds because of running out of space in _puppet
	8.4b.-1.20160716 _puppet should no longer generate foreign device prompts for attachments
	8.4b.-1.20160724 fixed faulty management of temporary whitelist and temporary blacklist causing stride corruption
	8.4b.-1.20160724 @range command for follow control; also @leash now aliases to @follow
	8.4b.-1.20160724 new order for subsystems: video, audio, move, teleport, rapid, voice, mind, preamp, power amp, radio in, radio out, GPS, identify. This will affect t3z's old power profile scripts for Arabesque. (They have been updated. Some may have changed a little.)
	8.4b.-1.20160724 switch to using list facilities for summing elements in _power
	8.4b.-1.20160724 chassis specification support: _foundation, _power, and _sentinel (ATOS/E 12.0.1) now all recognize a number of chassis options using messages 993 and 994 from _puppet (updated chassis controller module will be released soon)
	8.4b.-1.20160731 resolved totally useless shutdown behavior
	8.4b.-1.20160731 fixed abnormal windlight changes during charging
	8.4b.-1.20160731 @policy command implemented; doesn't actually affect the system yet, though
	8.4b.-1.20160731 empty fields now hidden in @about; serial prefix is now "NS" for non-DAX and non-SXD units (otherwise still "SXD").
	8.4b.-1.20160731 @unleash to mirror @leash
	8.4b.-1.20160813 '@persona probe' to force refresh of personas list
	8.4b.-1.20160813 XSU support
	8.4b.-1.20160910 waypoint following should not set the device manager's follow target
	8.4b.-1.20160910 added xanadu 'cleanup' message to destroy dead package installers
	8.4b.-1.20160910 fixed '@navigate stop'
	8.4b.-1.20160910 added 100 kJ cap to @zap when _sentinel is installed (not foolproof; can cause disasters if multizap is used)
	8.4b.-1.20160910 fixed redundant dialog menus opening when touch screen is used (caused by conflicts in local guest access code)
	8.4b.-1.20160910 added optional header file for coilDDT so messages can be named
	8.4b.-1.20160910 menu controls for basic policy features
	8.4b.-1.20160910 local command input on /1, like OC commands (see '@commands local' and '@commands prefix')
	8.4b.-1.20160910 serial numbers not of length 9 will now be displayed without hyphens in the boot sequence and @about
	8.4b.-1.20160910 subsystem blocking by devices (proof-of-concept device: cortex)
	8.4b.-1.20160910 IRR policy control of subsystems, vox, apparel, and persona settings.
	8.4b.-1.20160910 beginning support for arousal model (not yet available)
	8.4.0m5 /1 command prefixes now forced to lower case
	8.4.0m5 curfew policy
	8.4.0m5 block follow and navigate while motors disabled
	8.4.0m5 restrict access to @restraint/@rlv (managers only)
	8.4.0m5 curfew time entry
	8.4.0m5 fixed a case where guest authorization was removing the wrong listeners
	8.4.0m5 fixed a case causing corruption of temporary white/black lists (numbers appearing in lists)
	8.4.0m5 require basic remote access to create a tty session - no more menu prompts for rejectees; unfortunately this means that old remote consoles (before 1.5) no longer work
	8.4.0m5 fixed a long-standing bug where changing @access settings would not clear cached permissions for last accessor
	8.4.0m5 don't ask for permission to respond to ! commands in RLV (??? seems to already be fixed)
	8.4.0m5 default to verbosity = 1

	8.4.0m5 IRR implementation: radio limitations (implementation restriction: clearing the user list can cause exceptions to linger until reattach)

	8.4.0m6 fixed HUD "0/-1" problems
	8.4.0m6 NRS: removed 'arrived at waypoint name' messages
	8.4.0m6 added subtle sound effects during _oem parsing to make it easier to diagnose hung updates

COMPANION 8 - THE "YES, WE KNOW WHAT RLV IS" UPDATE - TO DO
	8.4.0m6 KSP-510 White Vaille: Could not find notecard 'e_charge-start'.
	8.4.0m6 central user and restraint management (_hierarchy (NSM)). NSM can also specify a script to execute after sync for configuring default settings.
	8.4.0m6 NSM hierarchy/XNMS domain control
	8.4.0m6 NSM sync users
	8.4.0m6 NSM lock user list
	8.4.0m6 NSM execute policy script
	8.4.0m6 piloting

	8.4.0m7 semi-realism control (EPS): emotes and IMs when powered down, etc. (_afterglow)

	8.4.0m7 EPS beacon test mode
	8.4.0m7 EPS beacon frequency + emergency contact settings
	8.4.0m7 EPS capacitor charging
	8.4.0m7 EPS permission exemptions
	8.4.0m7 EPS timeouts
	8.4.0m7 EPS control menu
	8.4.0m7 EPS management commands

	8.4.0a1 @optics apply or equivalent linked message to fix gamma after _sentinel stops overheating

	8.4.0a1 feedback for single-shot power loads (let devices ask for a pulse of power and get feedback)

	8.4.0a1 ERR block send emotes
	8.4.0a1 ERR block send whisper only

	8.4.0a1 fix 'commands' browser

	8.4.0a1 HUD integration API - double check that part commands, etc. work
	8.4.0a1 integrated HUDs for HPD and color change
	8.4.0a1 smarter #RLV management for consoles

	8.4.1 improve interface for whitelist and blacklist management
	8.4.1 improve interface for domain and role selection

COMPANION 8 - THE DISEASE VECTOR UPDATE

	8.5.0 fix xanadu menus
		package ghosting bug (can't install instructor if instructor-circe is installed, for example)
		multiple updates bug (if not yet fixed)
		upgrading system package
		smarter button length limit control

	8.5.0 access protections for individual arabesque scripts and personas (e.g. "only managers or above may run this script")
	8.5.0 menu format for owner-only commands (maybe *?)
	8.5.0 freeze/unfreeze per-key in _bonds or _power
	8.5.0 interference per-key in _coil

	8.5.0 finalize @audience; add as element managed by vox policy
	8.5.0 ERR block chat and emotes when audience is enabled

	8.5.0 prevent file name collisions during install or upgrade (will require new standard __xanadu-package script and a smarter Songbird)
	8.5.0 warn before overwriting files during install or upgrade
	8.5.0 automatic @update web update command + run once after owner change from a module that never resets (probably xanadu-client itself!)

	8.5.0 chassis types
	8.5.0 memory card replacement
	8.5.0 automatic drag-and-drop: prompt user to move files to audio processor (v_ files only), user memory, etc. if they get added to system memory
	8.5.0 install packages without a server connection ("have disk..." to install from nearby object, and "browse..." to install from memory card)
	8.5.0 Xanadu download-without-installing option ("auto-install")
	8.5.0 tiered interference levels (requires collab with Julie)
		Cognitive: persona reset -> uncoupled -> mind shut-off
		Motors: rapid loss -> move loss
		seNsory: vision issues -> video loss -> audio loss
		Speakers: noise -> whisper -> no audio output at all
		memorY: identify -> GPS -> notecards, textures, etc.

COMPANION 8 - THE FRIENDLY UPDATE

	8.6.0 tunable power warning message thresholds?

	8.6.0 OOBE: basic set-up, auto-update on first boot, etc.

	8.6.0 textbox password option instead of PIN

	8.6.0 Bluetooth subsystem

COMPANION 8 - THE DREAMY FANTASTIC PERFECTION UPDATE

	8.7.0 LaserLine for navigation and GPS
	8.7.0 consider facing ! vs @ vs . confusion
	8.7.0 arousal model

COMPANION 9

	9.0.0 module hibernation
	9.0.0 Xanadu updating for dependent devices and components (mini-songbird... song-hatchling?)
	9.0.0 i18n
	9.0.0 Fix salli bug for good
	9.0.0 More efficient illumination updating on controller: standardize on new SXD autodetect flicker script

ATOS ELEMENTS 12 - PATCHES/FEATURES DONE
	12.0.0 _sentinel module
	12.0.0 damage and heat (_sentinel): with folder loading from #RLV/~NS/damage/x, where x is a multiple of 20 from 0 to 100.
	12.0.0 (added integrity management to superbit)
	12.0.0 added integrity and heat display (console-screen)
	12.0.0 added damage alarm (console-screen)
	12.0.0 added screen brightening during overheating
	12.0.0c active weapon tracking
	12.0.0c heat should no longer panic after script reset
	12.0.0c BSD charging/repair station (ARC) compatibility
	12.0.0c auto-repair nanites can now only heal to a certain fraction of full integrity; ARC or repair gun required to effect full repairs (damage slowly lowers how much repair the nanites can do)
	12.0.0d solve unexpected overheating issues. Cause seems to be related to, yes, battery installation while powered on.
	12.0.0d active weapon handling
	12.0.0d powered weapon reloading
	12.0.0d hardware should continue to cool while powered down
	12.0.0d alarm shut-off on power down
	12.0.0d framework for environmental temperature
	12.0.0e simple weather model (requires sims to have NSWS)
	12.0.0e _sentinel should now 'vox probe' instead of 'vox glitch remove' on script reset; hopefully this will solve problems with the glitch filter not being enumerated
	12.0.0e new damage method: collisions from objects named atos:<damage>, where <damage> is the number of hit points lost—can also be used for repair (will recover durability loss)
	12.0.0e chassis strength display in HUD, etc.
	12.0.0e weapons will now be removed from the HUD if detached while wielded
	12.0.0f fixed SENTINEL_BOOTABLE being sent every tick
	12.0.1 durability multiplier via chassis system
	12.0.3 overheat-death mechanics changed; cooldown progress while shut down now tracked in real time and improved by being under water
	12.0.3 auto-rez

ATOS CORTEX 12 - PATCHES/FEATURES TO DO
	12.1.0 switch to proper IDE for development
	12.1.0 convert all modules to use system.lsl headers
	12.1.0 rename modules
	12.1.0 _SCE-console: devices, HP, shield, ammo, temperature gauges, battery, power draw, active weapon
	12.1.0 remove power-amplifier
	12.1.0 simplify users model
	12.1.0 disable unauthenticated access
	12.1.0 add separate flight subsystem
	12.1.0 devicenet subsystem toggle
	12.1.0 disable persona control
	12.1.0 disable speech pipeline
	12.1.0 disable speech messages
	12.1.0 merge local/remote access modes
	12.1.0 automated group activation for AT/XNMS combat sims

ATOS ELEMENTS 12 - PATCHES/FEATURES TO DO
	12.2.0 IFF display with LaserLine (two-module version)
	12.2.0 shield HUD

XANADU VENDOR SYSTEM - TO-DO
	server-side dispatch and management of XVSCs
	affiliate vendor support (ownership by others, cuts - also refusal to work without money withdrawal permissions) - hardcoded in for now
	automated update distribution
	finish converting store to vendor format; release more products on marketplace

DEVICES - TO FINISH
	remaining handle styles (hard light and retractable)
	heart icons
	hover shoes
	demo stand

DEVICES - TO START
	power switch

DEVICES - UPDATES
	horns don't reapply animation at login
	updated OSL2 pack

GADGETS, ETC.
	SuperKipper
	tazer

ATOS-POWERED DEVICES
	NS-91E Arch
	NS-76C Hephaestus
	NS-102A Clepsydra
	C-4

INFRASTRUCTURE
	Xanadu Network Management Server (hierarchy/XNMS) (8.4)
	Advanced Tactical Xanadu Network Management Server (AT/XNMS) (12.1)
		ceiling on incoming DPS
		rez time
		overall armor multiplier
		group setting

UNCATEGORIZED APP AND FEATURE IDEAS FOR COMPANION 8+
	piped audio (regional communication network)
		doll concordance simulator
	power theft + hacking ("vampire" mode)
	native remote access (terminal dialing)
	policy management (8.4)
		forbidden subsystems
		maximum accessible battery life
		forbidden sims
	file manager (8.5)
	scheduling and reminders (sin-labs doll system)

VERY FUTURE PROJECTS
	magic controller
	subductive implants for programming, hypnosis, and enslavement (very small controllers with topically-focused menus and packaged software configurations)
	fantasy soft skin design
	calligraphy skin design
	computer history skin design